10282 - Babelfish(stl map)

10282 - Babelfish

题目大意:就是构建一个字典,用来查询单词。

阶梯思路:用stl map,用来一一对应单词。然后string可能不支持printf,之前一直都错在这里。然后前面输入的需要注意一下,接受空行用gets和s【0】 == ‘\0’结合判断。


#include<iostream>
#include<stdio.h>
#include<map>
#include<string>
using namespace std;

map<string, string> vis;
map<string, string>::iterator it;
char s[30];

int main() {

	char s1[20], s2[20];
	while (gets(s) != NULL && s[0] != '\0') {
		
		sscanf(s, "%s%s", s1, s2);
		vis[s2] = s1;
	}
	while (scanf("%s", s) == 1) {
		
		it = vis.find(s);
		if (it != vis.end())
			cout<< vis[s]<<endl;
		else
			printf("eh\n");
	}
	return 0;
}


你可能感兴趣的:(10282 - Babelfish(stl map))