★★ 輸入檔案:star.in
輸出檔案:star.out
簡單對比
時間限制:2 s 記憶體限制:128 mb
在lazycat同學的影響下,roby同學開始聽南韓的**,並且越來越喜歡h.o.t,尤其喜歡安七炫和tony,可是,愛學習愛思考的roby同學想,如果以後喜歡的韓星越來越多怎麼辦呢?roby怎麼知道roby最喜歡誰呢(roby都不知道誰知道呢。。。。)?
於是,roby同學求助於你。
roby首先會給你一張表,表上是所有他認識的韓星的名字,一開始他對所有韓星的好感度都為0。
然後roby會告訴你一些他對某個韓星的好感度變化。
最後,請按照roby對他們好感從大到小的順序輸出他們。
[輸入]
第一行乙個個數n,表示roby知道的韓星數目。
後面有n行,表示每乙個roby認識的韓星的名字。
再下面一行乙個數k。
接下來2*k行,每兩行為一組,上面一行為韓星的名字name,下面一行為好感度變化量change。
[輸出]
n*2行,依據韓星們的受roby好感度從大到小的順序輸出,每兩行為一組,第一行輸出韓星的名字,第二行輸出受roby的好感度。
[樣例輸入]
3 hhisagay
zclovestudy
oneblueone
5 zclovestudy
100
oneblueone
8888
zclovestudy
20 oneblueone
8888
hhisagay
-1000
[樣例輸出]
oneblueone
17776
zclovestudy
120
hhisagay
-1000
[資料範圍]
對於20%的資料,保證n<=100,k<=100.
對於40%的資料,保證n<=10000,k<=30000.
對於100%的資料,保證n<=100000 -8888<=change<=8888 k<=100000.
[時限]
2s感覺這一道題還是用map比較簡單啊~
map的用法可以看一下 這裡 哦
map輕鬆過掉啦
#include#include#include
#include
#include
#include
using
namespace
std;
mapmap;
string name[100005
];struct
star
arr[
100005
];int
cmp(star a,star b)
intmain()
intk;
cin>>k;
for(int i=1;i<=k;i++)
for(int i=1;i<=n;i++)
arr[i].value=map[arr[i].s];
sort(arr+1,arr+n+1
,cmp);
for(int i=1;i<=n;i++)
cout
return0;
}
COGS血帆海盜
對於已經增廣後的圖,會出現一些反向邊,首先跑一邊最大流,只有對於被增廣的路才有可能成為答案,考慮每一條被曾廣的路,如果他在殘留網路中兩個端點在同乙個強連通分量裡,必然有其他的路徑可以代替這條邊,比如圖中1 2 3 4 構成乙個環3 2 1 4 3,3 2可以替代原來的1 2,所以只有那些被增廣後,起...
COGS902 樂曲主題
這個題一開始想的是hash 列舉長度 sort尋重o n2lo g2n 50002 12 3 108,但是模乙個數就wa了,模兩個數就t了 卡得不行不行的。問題在於,實際上長度顯然是單調合法的 如果len行,則小於len一定行 所以我們可以變列舉為二分。巨集哥orz 這也正是我沒有想到的了,最近總是...
COGS 2259 異化多肽
qaq 很明顯我們是可以搞一下指數生成函式的 然而複雜度是o m n2 o m n2 無法優化 換個方式做生成函式 a x 表示 質量為 x 的 氨基酸有幾類 b x i 0 a x i b x i 0 a x i 顯然答案是b x 中的n次項係數 上面的式子即為乙個無限等比數列求和 度度的公式s ...