题意:输入英语与外语的字典,问接下来输入的单词是否出现。
主要是字符串的处理。
<span style="font-family:Courier New;font-size:14px;">#include<iostream>
#include<string>
#include<cstdio>
#include<map>
using namespace std;
int main()
{
freopen("in.txt","r",stdin);
char English[15],Foreign[15];
map<string,bool>appear;
map<string,string>translate;
while(true){
char t;
t = getchar();
if(t == '\n')
break;
else {
English[0] = t;
int i = 1;
while(true){
t = getchar();
if(t == ' '){
English[i] = '\0';
break;
}
else English[i++] = t;
}
}
cin>>Foreign;
getchar(); //不能少
appear[Foreign] = true; //多练习
translate[Foreign] = English;
}
char words[15];
while(cin>>words){
if(appear[words])
cout<<translate[words]<<endl;
else cout<<"eh"<<endl;
}
return 0;
}
</span>

本文介绍了解决POJ2503问题的方法,该问题涉及输入英语与外语的字典,并判断后续输入的单词是否存在于字典中。通过使用C++中的map结构进行字符串处理。
1万+

被折叠的 条评论
为什么被折叠?



