读书人

hdu1251 统计偏题 字典树

发布时间: 2012-07-30 16:19:05 作者: rapoo

hdu1251 统计难题 字典树

hdu 1251 统计难题

字典树的解释及模板

背下来..

#include<iostream>using namespace std;struct trie{int num;bool isword;trie *child[26];trie(){for(int i=0;i<26;i++)child[i]=0;num=0;isword=0;}} root;void insert(char *x){int k=0;trie *p=&root;while(x[k]!='\0'){if(p->child[x[k]-'a']==0)p->child[x[k]-'a']=new trie;p=p->child[x[k]-'a'];p->num++;k++;}p->isword=1;}int find(char *x){int k=0;trie *p=&root;while(x[k]!='\0'&&p->child[x[k]-'a'])p=p->child[x[k++]-'a'];//printf("!");return x[k]=='\0'? p->num:0;}int main(){char x[20];while(gets(x)&&x[0]!='\0') insert(x);while(scanf("%s",x)!=EOF)printf("%d\n",find(x));return 0;}


题目:

HDU: 1004,1251,1075,1800,2072

读书人网 >编程

热点推荐