这道题大致的意思就是输入翻译表,每行的左边单词是英语单词,每行右边的单词是一个fat mouse 语言,所以只要用map就可以解决这个翻译问题可以把fat mouse 语作为键值,对应的英语翻译作为元素值,主要问题是如何将输入翻译表和输出翻译分隔开,我用了两个getchar实现了这个操作,又因为防止每一行的首字母被吞做了一个make_ pair(b,e+a)的语句。
下面是我的AC代码:
#include<iostream>
#include<cstdio>
#include<map>
#include<cstring>
using namespace std;
int main()
{
map<string,string>dictionary;
string a,b,c;
char d,e;
while(cin>>a>>b)
{
d=getchar();
dictionary.insert(make_pair(b,e+a));
e=getchar();
if(e=='\n')break;
}
while(cin>>c)
{
if(dictionary.count(c)!=0) cout<<dictionary[c]<<endl;
else cout<<"eh"<<endl;
}
return 0;
}