博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Babelfish(二分)
阅读量:7045 次
发布时间:2019-06-28

本文共 1945 字,大约阅读时间需要 6 分钟。

Babelfish
Time Limit: 3000MS   Memory Limit: 65536K
Total Submissions: 37238   Accepted: 15879

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

dog ogdaycat atcaypig igpayfroot ootfrayloops oopslayatcayittenkayoopslay

Sample Output

catehloops题解:此处用到了sscanf的用法,很巧妙; 代码:
1 #include
2 #include
3 #include
4 using namespace std; 5 const int MAXN=100010; 6 struct Node{ 7 char en[20],ei[20];//无语开小了。。。 8 }; 9 Node dt[MAXN];10 int cmp(Node a,Node b){11 return strcmp(a.ei,b.ei)<0;12 }13 int erfen(char *x,int l,int r){14 while(l<=r){15 int mid=(l+r)>>1;16 if(!strcmp(dt[mid].ei,x))return mid;17 if(strcmp(dt[mid].ei,x)>0)r=mid-1;18 else l=mid+1;19 }20 return -1;21 }22 int main(){23 int dm=0;24 char str[50];25 Node a;26 while(gets(str)){27 if(str[0]=='\0')break;28 sscanf(str,"%s%s",a.en,a.ei);//这里很巧妙。。。 29 dt[dm++]=a;30 }31 sort(dt,dt+dm,cmp);32 while(~scanf("%s",str)){33 int t=erfen(str,0,dm-1);34 if(t==-1)puts("eh");35 else printf("%s\n",dt[t].en);36 }37 return 0;38 }

 

转载地址:http://uaqal.baihongyu.com/

你可能感兴趣的文章
Longest Increasing Path in a Matrix
查看>>
13岁女孩因发布JavaScript无限循环代码被捕
查看>>
Yelp开源数据管道项目最新组件——数据管道客户端库
查看>>
Coinbase是如何在其加密货币交易平台上应对扩展性挑战的
查看>>
Elixir:可能成为下一代Web开发语言
查看>>
苹果Q1财报出炉:手机收入下滑15%,服务收入增长19%
查看>>
Racket 6.7最新版本:提供对Android App的支持及改进的REPL等等
查看>>
Eclipse发布MicroProfile 1.4和2.0
查看>>
Kubernetes日志分析利器:Elassandra部署使用指南
查看>>
TOP 13大最热开源微服务Java框架
查看>>
Swift 3来了!
查看>>
京东构建了全球最大的Kubernetes集群,没有之一
查看>>
Node项目之需求收集平台(一)- 基本介绍
查看>>
ArchSummit北京2015 | “新人”的技术约战
查看>>
Microsoft宣布正式发布Linux on ASE
查看>>
Elm提供的语言级响应性
查看>>
微服务通信策略
查看>>
InfoQ 趋势报告:技术文化\u0026方法2019年实践状况
查看>>
Entity Framework Core 2.0的槽点
查看>>
甲骨文解散Java Mission Control团队事件新进展
查看>>