记录编号 |
40974 |
评测结果 |
AAAAAAAAAA |
题目名称 |
[咲 -Saki-] 天才麻将少女什么编 |
最终得分 |
100 |
用户昵称 |
Makazeu |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.120 s |
提交时间 |
2012-07-19 21:43:39 |
内存使用 |
0.31 MiB |
显示代码纯文本
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <string>
#include <map>
#include <algorithm>
#include <iostream>
using namespace std;
map<string,string> hash;
map<string,int> ans;
string s1,s2;
int N,K;
int main()
{
//freopen("in","r",stdin);
freopen("sakinani.in","r",stdin);
freopen("sakinani.out","w",stdout);
std::ios::sync_with_stdio(false);
cin>>N;
for(int i=1;i<=N;i++)
{
cin>>s1>>s2;
hash[s1]=s2;
}
cin>>K;
for(int i=1;i<=K;i++)
{
cin>>s1;
s2=hash[s1];
if(s2!="") ans[s2]+=2;
}
while(!cin.eof())
{
cin>>s1;
//cout<<s1<<endl;
s2=hash[s1];
if(s2!="") ans[s2]++;
}
ans[s2]--;
int tmp=0;
map<string,int> :: iterator iter;
for(iter=ans.begin();iter!=ans.end();iter++)
{
//cout<<iter->first<<" "<<iter->second<<endl;
if(iter->second==tmp && iter->first<s1)
{
s1=iter->first;
continue;
}
if(iter->second>tmp)
{
tmp=iter->second;
s1=iter->first;
}
}
cout<<s1<<endl;
return 0;
}