比赛 咲 -Saki- 互测赛 评测结果 AAAAAAAAAA
题目名称 天才麻将少女什么编 最终得分 100
用户昵称 Makazeu 运行时间 0.261 s
代码语言 C++ 内存使用 3.13 MiB
提交时间 2012-07-19 09:57:27
显示代码纯文本
#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;
}