题目链接
题目大意 一个到外国旅游的歪果仁需要查字典,然后大概要输入100000条单词信息 然后再输入查询单词,不知道有没有讲清楚,反正就是查单词啦。
分析 简单映射用map即可。 输入需要注意 空格和换行的问题
#include<iostream>
#include<map>
#include<string>
#include<sstream>
using namespace std;
int main (void){
map<string,string>hash;
string strk,strv,line;
while(getline(cin,line)){
if(line.length()==0) break; //遇到连续换行结束
istringstream ss(line); //消除string中的空格
ss>>strv>>strk;
hash[strk]=strv;
}
while(getline(cin,line)) {
if(hash.count(line)) cout<<hash[line]<<endl;//查找
else cout<<"eh"<<endl;
}
return 0;
}
总结 这道题老师本来是让我们拿来练习哈希的 咳咳 我用了一个伪哈希。恩,在输入的问题上纠结了好久,空格并不能让cin结束 果然 getline还是很好用的hhhhhh