博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj 2503 Babelfish
阅读量:5104 次
发布时间:2019-06-13

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

题目就是间接的让你翻译单词的,输入的每一行有两个单词,其中有一个可以认为是字典,另一个就是要翻译成的单词了

可能是我想的复杂了,我是用trie树做的。先定义一个结构体,存储输入的字符串  

1 #include
2 #include
3 #include
4 #define N 20 5 #define M 100001 6 using namespace std; 7 struct node 8 {
9 int k; 10 node *key[26]; 11 node() 12 {
13 for(int i=0;i<26;i++) 14 key[i]=NULL; 15 k=0; 16 } 17 }; 18 struct str 19 {
20 char s[N]; 21 char b[N]; 22 }a[M]; 23 node *root; 24 void insert(char *S,int n) 25 {
26 int i,len=strlen(S),t; 27 node *p; 28 p=root; 29 for(i=0;i
key[t] != NULL) 33 p = p->key[t]; 34 else 35 {
36 p->key[t] = new node; 37 p = p->key[t]; 38 } 39 } 40 p->k=n; //这里将字符串的位置标记下来,便于查找的时候输出另个单词 41 } 42 int find(char *S) 43 {
44 int i,len = strlen(S),t; 45 node *p; 46 p = root; 47 for(i = 0;i < len;i ++) 48 {
49 t = S[i] - 'a'; 50 if(p->key[t] != NULL) p = p->key[t]; 51 else return -1; 52 } 53 return p->k; 54 } 55 int main() 56 {
57 int i; 58 root = new node; //这里也要注意,老是忘记申请空间 59 char t[100]; 60 i=0; 61 while(gets(t)&&strcmp(t,"")) 62 {
63 sscanf(t,"%s%s",a[i].s,a[i].b); 64 //cout<
<
>t) 69 { 70 //cout<
<

然后建立trie树,查找就行了

 

转载于:https://www.cnblogs.com/fxh19911107/archive/2012/03/05/2380887.html

你可能感兴趣的文章
Java重试机制
查看>>
二维数组与稀疏数组的相互转化
查看>>
一步一步写自表达代码——消小球(3)
查看>>
已成功与服务器建立连接,但是在登录前的握手期间发生错误。 (provider: SSL Provider, error: 0 - 等待的操作过时。)...
查看>>
php学习笔记--引号
查看>>
快速搞懂 SQL Server 的锁定和阻塞
查看>>
ubuntu12.04安装squid
查看>>
js中自定义方法 转载
查看>>
Mockplus原型设计工具介绍
查看>>
兄弟连(python)--------------------radis日常随笔
查看>>
poj3614 Sunscreen
查看>>
我要好offer之 排序算法大总结
查看>>
python 接口自动化测试(六)使用unittest 批量用例管理
查看>>
PowerDesigner 物理数据模型(PDM) 说明
查看>>
tomcat6.exe与tomcat6w.exe的区别
查看>>
Go之数组
查看>>
Sharepoint学习笔记 –架构系列—Sharepoint的服务器端对象模型(Server Object Model) 3.服务层次结构...
查看>>
将SQL中字段值为null的记录在GridView中显示为"0"
查看>>
[转] 深刻理解Python中的元类(metaclass)
查看>>
CommonJS基础1
查看>>