当时切赛的时候看到就想到了map。。可惜太水了。。忘记map怎么用了。。。。
题意就是:第一行为学生数目n,接下来的n行为学生的名字,然后整数m为测试次数,最后输出每次李明的排名
就是map啊。。。【很水的说】
就是输入卡了我一个小时。。最后发现死在了一个getchar上。。。欲哭无泪啊
#include <cstring>
#include <cstdio>
#include <iostream>
#include <map>
using namespace std;
const int maxn=10010;
string name[maxn],str;
int m,n,score,li=0;
map<string,int>student;
int main()
{
while(scanf("%d",&n)!=EOF)
{
getchar();
for(int i=0;i<n;i++)
{
getline(cin,str);
name[i]=str;
student[str]=0;
}
scanf("%d",&m);
while(m--)
{
for(int i=0;i<n;i++)
{
scanf("%d",&score);
getchar();
getline(cin,str);
student[str]+=score;
if(str=="Li Ming")
li=student[str];
}
int ans=1;
for(int i=0;i<n;i++)
{
if(student[name[i]]>li)
ans++;
}
printf("%d\n",ans);
}
}
}