水题 STL直接水过
坑爹的是题目完全没说有多组数据结果一直WA
#include<iostream>
#include<cstdlib>
#include<cstdio>
#include<string>
#include<vector>
#include<deque>
#include<queue>
#include<algorithm>
#include<set>
#include<map>
#include<stack>
#include<ctime>
#include<cmath>
#include<list>
#include<cstring>
//#include<memory.h>
using namespace std;
#define ll long long
#define ull unsigned long long
#define pii pair<int,int>
#define INF 1000000007
#define pll pair<ll,ll>
#define pid pair<int,double>
#define sci(a) scanf("%d",&a)
#define scd(a) scanf("%lf",&a)
#define scs(a) scanf("%s",a)
#define pri(a) printf("%d\n",a);
#define prd4(a) printf("%.4lf\n",a);
#define prs(a) printf("%s\n",a);
int main(){
//freopen("/home/lu/文档/r.txt","r",stdin);
//freopen("/home/lu/文档/w.txt","w",stdout);
int n,m,add,rank;
string str;
map<string,int>mp;
while(~sci(n)){
mp.clear();
for(int i=0;i<n;++i){
cin>>str;
mp[str];
}
sci(m);
map<string,int>::iterator mem=mp.find("memory");
while(m--){
for(int i=0;i<n;++i){
cin>>add>>str;
mp[str]+=add;
}
rank=1;
for(map<string,int>::iterator it=mp.begin();it!=mp.cend();++it)
if(it->second>mem->second)
++rank;
pri(rank);
}
}
return 0;
}