百度语言翻译机

时限 1s

百度的工程师们是非常注重效率的,在长期的开发与测试过程中,他们逐渐创造了一套他们独特的缩率语。他们在平时的交谈,会议,甚至在各中技术文档中都会大量运用。

为了让新员工可以更快地适应百度的文化,更好地阅读公司的技术文档,人力资源部决定开发一套专用的翻译系统,把相关文档中的缩率语和专有名词翻译成日常语言。

输入数据:

输入数据包含三部分

1. 第一行包含一个整数 N ( N<=10000 ),表示总共有多少个缩率语的词条。

2. 紧接着有 N 行的输入,每行包含两个字符串,以空格隔开。第一个字符串为缩率语(仅包含大写英文字符,长度不超过 10 ),第二个字符串为日常语言(不包含空格,长度不超过 255 ) .

3. 从第 N+2 开始到输入结束为包含缩略语的相关文档。(总长度不超过 1000000 个字符)

输出数据:

输出将缩率语转换成日常语言的文档。(将缩率语转换成日常语言,其他字符保留原样)

输入例子:

6

PS 门户搜索部

NLP 自然语言处理

PM 产品市场部

HR 人力资源部

PMD 产品推广部

MD 市场发展部

百度的部门包括 PS , PM , HR , PMD , MD 等等,其中 PS 还包括 NLP 小组。

输出例子:

百度的部门包括门户搜索部,产品市场部,人力资源部,产品推广部,市场发展部等等,其中门户搜索部还包括自然语言处理小组。

注意:

1 . 输入数据中是中英文混合的,中文采用 GBK 编码。

2 . 为保证答案的唯一性,缩率语的转换采用正向最大匹配(从左到右为正方向)的原则。请注意输入例子中 PMD 的翻译。

my answer:

一开始正向最大匹配没有理解。以为要处理NLPS这样的,如果按NLPS算只有一个不匹配,按PS有两个不匹配,往动态规划考虑。

后来发现“包含缩略语的相关文档”中的缩略语前后都是有空格的,一个缩略语只代表一种结果,后字典树就可以了

但是题目有个BUG,将缩率语转换成日常语言,其他字符保留原样。可是给的样例输出中,缩略语前后的空格都没有了

#include <iostream> #include "Trie.h" using namespace std; string str1, str2; int main() { int n, i; dictree *root = new dictree; cin>>n; for(i = 0; i < n; i++) { cin>>str1>>str2; root->insert(str1, str2); } char c; string str = ""; while(c = getchar()) { if(c >= 'A' && c <= 'Z') str = str + c; else { if(str != "") { string ret = root->search(str); if(ret == "") cout<<str; else cout<<ret; str = ""; } cout<<c; } } cout<<endl; delete root; return 0; }

转载于:https://www.cnblogs.com/windmissing/archive/2012/05/18/2559823.html

2006年百度之星程序设计大赛试题初赛题目-题6-百度语言翻译机相关推荐

  1. 2007年百度之星程序设计大赛试题初赛题目-题3-实习生小胖的百度网页过滤器

    题目描述 百度网页采集器 (Baiduspider) 每天从互联网收录数亿网页,互联网的网页质量参差不齐.百度的工程师们每天都在改进方法来判断一个网页质量的好坏,使质量差的网页出现在检索结果中较后的位 ...

  2. 2007年百度之星程序设计大赛试题初赛题目-题4-百度时间

    题目描述 Baidu 的服务器上使用的不是北京时间,而是 Baidu 时间. Baidu 时间的时分秒与北京时间相同,但是日期与北京时间不同,是用一个正整数表示从 2000 年 1 月 1 日 起的第 ...

  3. AStar2006百度之星程序设计大赛试题

    1.百度语言翻译机 百度的工程师们是非常注重效率的,在长期的开发与测试过程中,他们逐渐创造了一套独特的缩略语.他们在平时的交谈.会议,甚至在各种技术文档中都会大量运用. 为了让新员工可以更快地适应百度 ...

  4. 2006年百度之星程序设计大赛复赛第4题 彩球游戏(zuma) 题目及解法

    修改源代码,增加注释. /* * common.h * * Created on: 2010-2-6 * Author: edan.deng */ #ifndef COMMON_H_ #define ...

  5. php解:2006 年百度之星程序设计大赛复赛题目 4 ----彩球游戏

    2006 年百度之星程序设计大赛复赛题目 4 彩球游戏 X 博士是一个研究儿童智力开发方法的科学家,他为幼儿教育领域做出了许多贡献.最近, X 博士正在研究一种适合儿童的游戏,用以辅助发展儿童的观察力 ...

  6. 2006 年百度之星程序设计大赛初赛题目 6 百度语言翻译机

    百度语言翻译机 2006 年百度之星程序设计大赛初赛题目 6 百度语言翻译机 时限 1s 百度的工程师们是非常注重效率的,在长期的开发与测试过程中,他们逐渐创造了一套他们独特的缩率语.他们在平时的交谈 ...

  7. HDU 6114 Chess 【组合数】(2017百度之星程序设计大赛 - 初赛(B))

    Chess Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

  8. hdu6383(2018 “百度之星”程序设计大赛 - 初赛(B))

    p1m2 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) Total Sub ...

  9. hdu6380(2018 “百度之星”程序设计大赛 - 初赛(B))

    degree Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) Total S ...

  10. hdu6375(2018 “百度之星”程序设计大赛 - 初赛(A))

    度度熊学队列 Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) Total S ...

最新文章

  1. ffmpeg 编译Android
  2. SAP RETAIL 如何确定自动补货触发的单据类型 III
  3. Linux命令- echo、grep 、重定向、1>2、2>1的介绍
  4. 8种最有效的网站推广方案
  5. 【转载】Linux下有趣的命令
  6. 对X264/FFMPEG架构探讨---感觉不错
  7. 谁说数学没有用?披着小学数学外衣的,经典程序员面试题!
  8. linux软件包安装及自制yum源
  9. 【转】CentOS7 yum方式配置LAMP环境
  10. 探究CSS中border-top属性的使用
  11. atitit 高扩展性解决方案.docx
  12. 国外各厂家Visio素材搜集网站--系统集成必备
  13. Go语言实战+code
  14. AGV车载控制系统搭建(初学者入门)
  15. Axure RP10——值得信赖的强大的原型制作工具,无需编写代码即可创造无限可能
  16. HBase Java API操作数据库
  17. TCP连接三次握手协议,释放连接四次挥手,以及使用 awl伪造mac地址进行多线程syn洪泛攻击。...
  18. 蓝牙认证测试调试记录
  19. 数据分类分析--聚类
  20. Spring事务问题

热门文章

  1. 多线程往文件里写数据
  2. WINDOWS上svn服务器自动部署
  3. 个人随笔——衰人自叙卷贰
  4. ADO.NET Entity Framework 实体框架映射方案
  5. EPOLLONESHOT及其引发的EPOLL在ET能被多次触发吗?
  6. php autoload 性能,PHP __autoload()方法真的影响性能吗?
  7. linux 6.5 :qw,rhel 6.5替换centOS6的网易yum源
  8. unity 编辑器 混合使用固定布局和自动布局(二)
  9. java-----抽象类与接口
  10. 查看crontab的执行日志