您刚刚从毕节搬到了一个大城市。这里的人说的是一门不可理解的外语。幸运的是,您有一本字典可以帮助您理解它们。
输入格式:
输入最多包含100,000个字典条目,后跟一个空白行,然后是最多100,000个单词的消息。每个字典条目都是一行,包含英文单词,后跟一个空格和一个外语单词。在词典中,没有外来词出现多次。该消息是外语单词序列,每行一个单词。输入中的每个单词都是最多10个小写字母的序列。
输出格式:
输出是将消息翻译成英语,每行一个单词。词典中没有的外来词应翻译为“ eh”。
输入样例:
dog ogday
cat atcay
pig igpay
froot ootfray
loops oopslay
atcay
ittenkay
oopslay
输出样例:
cat
eh
loops
思路:用getline一行一行的读入,空行时结束,然后找到空格为分界点, 用map存关系
#include<bits/stdc++.h>
using namespace std;
int main()
{
string s;
map<string,string>mp;
while(getline(cin,s) && s != "")
{
string x,y;
int idx = 0;
for(int i=0;i<s.size();i++)
if(s[i] == ' ') idx = i;
for(int i=0;i<idx;i++) x += s[i];
for(int i=idx+1;i<s.size();i++) y += s[i];
mp[y] = x;
}
while(cin>>s)
{
if(mp.find(s) != mp.end()) cout<<mp[s]<<endl;
else cout<<"eh\n";
}
return 0;
}