【POJ】2503 - Babelfish(STL)
2016-07-27 14:49
357 查看
点击打开题目
Babelfish
Description
You have just moved from Waterloo to a big city. The people here speak an incomprehensible dialect of a foreign language. Fortunately, you have a dictionary to help you understand them.
Input
Input consists of up to 100,000 dictionary entries, followed by a blank line, followed by a message of up to 100,000 words. Each dictionary entry is a line containing an English word, followed by a space and a foreign language word. No foreign word appears
more than once in the dictionary. The message is a sequence of words in the foreign language, one word on each line. Each word in the input is a sequence of at most 10 lowercase letters.
Output
Output is the message translated to English, one word per line. Foreign words not in the dictionary should be translated as "eh".
Sample Input
Sample Output
Hint
Huge input and output,scanf and printf are recommended.
Source
Waterloo local 2001.09.22
纯纯的 STL 之string、map 的应用题。
在读入数据方面要注意,我不是很会用C++的输入输出流,方法比较笨。
代码如下:
#include <cstdio>
#include <map>
#include <string>
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
map<string,string> dic;
string a,b;
char t;
char temp[22];
while (t = getchar())
{
if (t == '\n')
break;
a.clear();
a += t;
scanf ("%s",temp);
a += temp;
scanf ("%s",temp);
b.clear();
b += temp;
dic[b] = a;
getchar();
}
while (~scanf ("%s",temp))
{
a.clear();
a += temp;
if (dic[a] != "")
cout << dic[a] << endl;
else
cout << "eh" << endl;
}
return 0;
}
Babelfish
Time Limit: 3000MS | Memory Limit: 65536K | |
Total Submissions: 40350 | Accepted: 17188 |
You have just moved from Waterloo to a big city. The people here speak an incomprehensible dialect of a foreign language. Fortunately, you have a dictionary to help you understand them.
Input
Input consists of up to 100,000 dictionary entries, followed by a blank line, followed by a message of up to 100,000 words. Each dictionary entry is a line containing an English word, followed by a space and a foreign language word. No foreign word appears
more than once in the dictionary. The message is a sequence of words in the foreign language, one word on each line. Each word in the input is a sequence of at most 10 lowercase letters.
Output
Output is the message translated to English, one word per line. Foreign words not in the dictionary should be translated as "eh".
Sample Input
dog ogday cat atcay pig igpay froot ootfray loops oopslay atcay ittenkay oopslay
Sample Output
cat eh loops
Hint
Huge input and output,scanf and printf are recommended.
Source
Waterloo local 2001.09.22
纯纯的 STL 之string、map 的应用题。
在读入数据方面要注意,我不是很会用C++的输入输出流,方法比较笨。
代码如下:
#include <cstdio>
#include <map>
#include <string>
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
map<string,string> dic;
string a,b;
char t;
char temp[22];
while (t = getchar())
{
if (t == '\n')
break;
a.clear();
a += t;
scanf ("%s",temp);
a += temp;
scanf ("%s",temp);
b.clear();
b += temp;
dic[b] = a;
getchar();
}
while (~scanf ("%s",temp))
{
a.clear();
a += temp;
if (dic[a] != "")
cout << dic[a] << endl;
else
cout << "eh" << endl;
}
return 0;
}
相关文章推荐
- 算法竞赛入门经典(第二版)-刘汝佳-第四章 发放救济金
- 203. Remove Linked List Elements
- android下大文件分割上传
- k-means和bp神经网络要点总结
- 用户级线程和内核级线程
- Matlab 和 C++混合编程
- time wait
- Android 5 消息机制源码分析
- 字符数字之间的转换
- HDU 5755 Gambler Bo(高斯消元解同余方程)
- Lua cocos2d
- gmt_offset变量是干什么的
- 开源软件53个相关概念
- servlet错误:HTTP Status 405 - HTTP method GET is not supported by this URL
- Leetcode 54. Spiral Matrix (Medium) (cpp)
- 开源软件53个相关概念
- 简单的dp加贪心
- HDU 5738 Eureka(组合数学)
- 【leetcode Database】197. Rising Temperature
- javascript面向对象思想