Sample Input

dog ogday
cat atcay
pig igpay
froot ootfray
loops oopslay

atcay
ittenkay
oopslay
Sample Output

cat
eh
loops

大致题意:
输入一个字典,字典格式为“英语à外语”的一一映射关系
然后输入若干个外语单词,输出他们的 英语翻译单词,如果字典中不存在这个单词,则输出“eh”

输入时顺便用STL的map标记外语是否出现过,然后再用map建立“外语à英语”的映射,那么输出时先查找“出现”的标记,若有出现过,再输出映射,否则输出“eh”。

题解1:

  1. # include<iostream>
  2. # include <cstdio>
  3. # include<string>
  4. # include<map>
  5. using namespace std;
  6.  
  7. int main(void)
  8. {
  9. char english[],foreign[];
  10.  
  11. map<string,string>translate; //记录foreign到engliash的映射
  12.  
  13. /*Input the dictionary*/
  14.  
  15. while(true)
  16. {
  17. char t; //temporary
  18.  
  19. if((t=getchar())=='\n') //判定是否输入了空行
  20. break;
  21. else //输入english
  22. {
  23. english[]=t;
  24. int i=;
  25. while(true)
  26. {
  27. t=getchar();
  28. if(t==' ')
  29. {
  30. english[i]='\0';
  31. break;
  32. }
  33. else
  34. english[i++]=t;
  35. }
  36. }
  37.  
  38. cin>>foreign;
  39. getchar(); //吃掉 输入foreign后的 回车符
  40.  
  41. translate[foreign]=english;
  42. }
  43.  
  44. /*Translate*/
  45.  
  46. char word[];
  47. while(cin>>word)
  48. {
  49. if(translate.find(word) == translate.end()) //没找到
  50. cout<<"eh"<<endl;
  51. else
  52. cout<<translate[word]<<endl;
  53. }
  54.  
  55. return ;
  56. }

题解2:

  1. # include<iostream>
  2. # include <cstdio>
  3. # include<string>
  4. # include<map>
  5. using namespace std;
  6.  
  7. int main(void)
  8. {
  9. char english[],foreign[];
  10.  
  11. map<string,bool>appear; //记录foreign与engliash的配对映射是否出现
  12. map<string,string>translate; //记录foreign到engliash的映射
  13.  
  14. /*Input the dictionary*/
  15.  
  16. while(true)
  17. {
  18. char t; //temporary
  19.  
  20. if((t=getchar())=='\n') //判定是否输入了空行
  21. break;
  22. else //输入english
  23. {
  24. english[]=t;
  25. int i=;
  26. while(true)
  27. {
  28. t=getchar();
  29. if(t==' ')
  30. {
  31. english[i]='\0';
  32. break;
  33. }
  34. else
  35. english[i++]=t;
  36. }
  37. }
  38.  
  39. cin>>foreign;
  40. getchar(); //吃掉 输入foreign后的 回车符
  41.  
  42. appear[foreign]=true;
  43. translate[foreign]=english;
  44. }
  45.  
  46. /*Translate*/
  47.  
  48. char word[];
  49. while(cin>>word)
  50. {
  51. if(appear[word])
  52. cout<<translate[word]<<endl;
  53. else
  54. cout<<"eh"<<endl;
  55. }
  56.  
  57. return ;
  58. }

POJ 2503 单词映射(map)的更多相关文章

  1. poj 2503 Babelfish (查找 map)

    题目:http://poj.org/problem?id=2503 不知道为什么 poj  的 数据好像不是100000,跟周赛的不一样 2000MS的代码: #include <iostrea ...

  2. POJ 2503 Babelfish(map,字典树,快排+二分,hash)

    题意:先构造一个词典,然后输入外文单词,输出相应的英语单词. 这道题有4种方法可以做: 1.map 2.字典树 3.快排+二分 4.hash表 参考博客:[解题报告]POJ_2503 字典树,MAP ...

  3. 题解报告:poj 2503 Babelfish(map)

    Description You have just moved from Waterloo to a big city. The people here speak an incomprehensib ...

  4. poj 2503 哈希 Map 字典树

    Babelfish Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 36967   Accepted: 15749 Descr ...

  5. VIM键盘映射 (Map)~转载

    VIM键盘映射 (Map) 设置键盘映射 使用:map命令,可以将键盘上的某个按键与Vim的命令绑定起来.例如使用以下命令,可以通过F5键将单词用花括号括起来: :map <F5> i{e ...

  6. VIM键盘映射 (Map)

    http://www.pythonclub.org/linux/vim/map VIM键盘映射 (Map) 设置键盘映射 使用:map命令,可以将键盘上的某个按键与Vim的命令绑定起来.例如使用以下命 ...

  7. 图像映射map

    <map>标签:带有可点击区域的图像映射 定义一个客户端图像映射.图像映射(image-map)指带有可点击区域的一幅图像. 效果图: 点击相应蓝色标签可进入详情页面浏览. 代码: < ...

  8. [51NOD1095] Anigram单词(map)

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1095 字典的单词在map中排序和不排序各存1次,查的时候相减. ...

  9. <顶>vim快捷键映射Map使用

    问题描述: 使用vim中的快捷键映射map,可以自定义快捷键 问题解决: (1)vim模式 (2)map前缀 (3)删除映射Map (4)使用示例 (5)查看快捷键映射 命令行---:verbose ...

随机推荐

  1. MyBatisPlus环境下使用MyBatis的配置类

    通过@Configuration使用MyBatis配置类的资料比较少,大部分都是通过XML的形式.找了好久,最终还是通过官方的文档找到了解决方法:http://www.mybatis.org/spri ...

  2. Java编程思想 学习笔记9

    九.接口 接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法. 1.抽象类和抽象方法  抽象类是普通的类与接口之间的一种中庸之道.创建抽象类是希望通过这个通用接口操纵一系列类. Java提 ...

  3. Neural Networks and Deep Learning 课程笔记(第二周)神经网络的编程基础 (Basics of Neural Network programming)

    总结 一.处理数据 1.1 向量化(vectorization) (height, width, 3) ===> 展开shape为(heigh*width*3, m)的向量 1.2 特征归一化( ...

  4. 转--利用hexo搭建个人静态博客

    引用地址 可谓图文并茂,可以配合 七牛云存储(做图片等文件服务器),搭建好看的个人博客 hexo 官方指导文档 主题 官网教程 问题集锦 简书 http://blog.csdn.net/wx_9624 ...

  5. GBK-----UTF-8编码格式问题浅析

    首先,想必大家在不同环境下切换写代码的时候,都会遇见乱码的时候(读取二进制的时候采用的编码和最初将字符转换成二进制时的编码不一致.),大多数人都知道,只需要把项目工程的编码格式调整一下为最初的编码就可 ...

  6. 第15月第6天 ios UIScrollView不能响应TouchesBegin

    1. 1:@property MyScrollView *scrollView; 2:给MyScrollView,增加类别:MyScrollView+Touch 3:在类别里实现下面三个方法: @im ...

  7. linux 链接理解

    1.软链接 只包含另外软链接的基本信息, 生成与源文件不同的节点号, 可以链接目录.不同网络的文件 2.硬链接只能链接文件,不会生成节点号,说白了就是指针,指向同个文件,所以链接的节点号与源节点号一致

  8. python - classs内置方法 solt

    solt # __solt__ # 是一个类变量,变量值可以是列表.元组或者是可迭代对象,也可以是一个字符串 # (以为这所有实例只有一种数据属性) # # 作用:(为了节省内存空间,减少过多的实例属 ...

  9. classfication中使用图像金字塔和sliding windows提高准确率

    之前对imagenet的预训模型进行finetune,找出了很多样本选择时的注意事项,当时在测试如下这张照片时,效果不好,我认为是物体过小造成的,因此尝试使用图像金字塔的方法: 当时结果如下: 一开始 ...

  10. [转]GDB-----2.watchpoint

    TODO需要在ARM下验证 1. 前言 watchpoint,顾名思义,其一般用来观察某个变量/内存地址的状态(也可以是表达式),如可以监控该变量/内存值是否被程序读/写情况. 在gdb中可通过下面的 ...