codeforces 2A Winner (好好学习英语)

Winner

题目链接:http://codeforces.com/contest/2/problem/A

    ——每天在线,欢迎留言谈论。

题目大意:  

最后结果的最高分 maxscore。在最后分数都为最高分maxscore的玩家中,找那个先得分>=maxscore 的玩家。。。。

o.o...折腾了一天,题意没搞懂。。。

思路:

模拟,没啥思路。此随笔纯粹感慨。。。

AC代码:

 1 #include <iostream>
 2 #include <map>
 3 #include <string>
 4 using namespace std;
 5 struct record
 6 {
 7     string s;
 8     int score;
 9     record():s(""),score(0){}
10 };
11 map<string,int> map1,maptemp;
12 record rec[1050];
13 int main()
14 {
15     int n,a,maxscore;
16     string ss;
17     cin>>n;
18     for(int i=0;i<n;i++)
19     {
20         cin>>ss>>a;
21         map1[ss]+=a;
22         //cout<<ss<<":"<<map1[ss]<<endl;
23         rec[i].s=ss;
24         rec[i].score=a;
25     }
26     maxscore=map1[rec[0].s];
27     for(int i=1;i<n;i++)
28         if(map1[rec[i].s]>maxscore)
29             maxscore=map1[rec[i].s];
30     for(int i=0;i<n;i++)
31     {
32         maptemp[rec[i].s]+=rec[i].score;
33         if(map1[rec[i].s]==maxscore&&maptemp[rec[i].s]>=maxscore)
34             {cout<<rec[i].s<<endl;return 0;}
35     }
36     return 0;
37 }

2017-05-10 00:47:32

posted @ 2017-05-10 00:48  Wei_Xiong  阅读(672)  评论(0编辑  收藏  举报
WX:我是来搞笑的