hdu 1247 HatWord ,Tries
来源:互联网 发布:数据挖掘导论 pdf 编辑:程序博客网 时间:2024/06/08 15:29
主题思想: 字典树 Tries
另外 c++ string sbustr( int start,int len) if len=-1 ,then until the end of the string
总结起来就是, c++ string substring 参数是起始位置,和长度
java String substr() 参数是起始位置,和结束位置下标,不包括结束下标
Tries 代码const int R=26;struct Node{ int val=-1; struct Node* next[R]; Node(){ val=-1; //very import memset(next,NULL,sizeof(next)); }};Node* root;int get(string key){ int d=0; char c; Node* x =root; while(x!=NULL){ if(d==key.length()){ return x->val; } c=key[d]; x=x->next[c-'a']; d++; } return -1;}void put(string key,int val){ Node* x=root; int d=0; char c; while(d<key.length()){ c=key[d]; //very important if(x->next[c-'a']==NULL) x->next[c-'a']=new Node(); d++; x=x->next[c-'a']; } x->val=val;}
AC代码:
#include <iostream>#include<cstdio>#include<string>#include<cstring>#include<vector>#include<cstdlib>using namespace std;const int maxn=50005;string a[maxn];const int R=26;struct Node{ int val=-1; struct Node* next[R]; Node(){ val=-1; memset(next,NULL,sizeof(next)); }};Node* root;int get(string key){ int d=0; char c; Node* x =root; while(x!=NULL){ if(d==key.length()){ return x->val; } c=key[d]; x=x->next[c-'a']; d++; } return -1;}void put(string key,int val){ Node* x=root; int d=0; char c; while(d<key.length()){ c=key[d]; if(x->next[c-'a']==NULL) x->next[c-'a']=new Node(); d++; x=x->next[c-'a']; } x->val=val;}int main(){ string s; int n=0; root=new Node(); while(cin>>s){ a[n]=s; n++; put(s,n); } for(int i=0;i<n;i++){ int len=a[i].length(); for(int j=1;j<len;j++){ if(get(a[i].substr(0,j))!=-1&&get(a[i].substr(j))!=-1){ cout<<a[i]<<endl; break; } } } return 0;}
阅读全文
0 0
- hdu 1247 HatWord ,Tries
- tries
- using tries
- Tries 模板
- trie树的应用:查找hatword
- Tries树(转载)
- 高级打字机 (Tries)
- 字典树(Tries)
- ALGS4_5.2 Tries
- Using Tries 《字典树》1
- Using Tries 《字典树》2
- Using Tries 《字典树》3
- tries树学习 poj 2513
- Persistent Ideal Hash Tries---一种Java实现
- Princeton Algorithms: Part 2 [week 5: Tries]
- kafka Failed to send messages after 3 tries 问题解决
- 另外一种版本的Java 版本Tries树结构
- kafka Failed to send messages after 3 tries 问题解决。
- JavaScript-1-2:Object类型、Function类型、Array类型
- POJ3259 Wormholes(Bellmanford判断负环)
- ThreadLocal对request和response的使用
- 页面分页
- ccf201412-3集合竞价
- hdu 1247 HatWord ,Tries
- 51Nod 1304 字符串的相似度
- mysql 5.7.17 ,group by问题
- 机器学习学习笔记.day6
- Android发展史(Android各版本特性-知识篇)
- cat,more,less,head,tail,输出重定向
- CSS盒模型
- 安卓各个版本新特性
- Java基础学习三