您的位置:首页 > 其它

poj 2503 babelfish

2013-05-06 22:51 239 查看
题目比较简单,但是输入比较纠结,我是用getline函数获取一行,再处理的,可以判断字符是否为空格来分开,我直接用sstream处理了,有点小题大做,用时比较多;

使用map比较方便

Memory: 9620K Time: 1813MS

Language: C++ Result: Accepted

#include <iostream>
#include <string>
#include <sstream>
#include <map>
#include <cstring>

using namespace std;

map<string,string> dictionary;

int main()
{	string str;
while(getline(cin,str) && (str != ""))
{
stringstream data;
data.str(str);
string str1,str2;
int word_count=0;
while(data)   //分别获取两个单词
{
word_count++;
if(word_count == 1) data>>str1;
else data>>str2;
}
dictionary[str2] = str1;
}
while(getline(cin,str) && (str != ""))
{
if(dictionary.find(str) != dictionary.end())
cout<<dictionary[str]<<endl;
else
cout<<"eh"<<endl;
}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: