POJ 2503 Babelfish



题目大意很简单,就是给你字典的对应信息,然后给你查询条件要求你输出字典查询结果,如果字符串没有在字典中则输出"eh"。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<map>
using namespace std;
map<string,int>  mp;
char str[100];
char source[12];
char d[1000010][12];
int main()
{
int m = 0;


// string t;
while(1){
gets(str);
///bool loca = true;
if(strcmp(str,"")==0)break;
/// printf("%s\n",str);
int s =0;
int i;
for(i = 0;i<strlen(str);++i)
if(str[i]==' '){
s = i;
break;
}
if(s==0)break;
str[s] = '\0';
strcpy(d[m],str);
strcpy(source,str+s+1);
///t = str+s+1;
mp[source] = m++;
}
if(strcmp(str,"")==0)scanf("%s",str);
if(mp.find(str)!=mp.end())printf("%s\n",d[mp[str]]);
else printf("eh\n");
while(scanf("%s",str)!=EOF){
if(mp.find(str)!=mp.end())printf("%s\n",d[mp[str]]);
else printf("eh\n");
}
return 0;
}

你可能感兴趣的:(POJ 2503 Babelfish)