poj3630 字典树
2014-04-08 13:23
169 查看
静态建树,空间开大点,动态会超时,其他没什么好说的。
代码:
代码:
#include <iostream> #include <cstring> #include <cstdio> using namespace std; int T[100000][10]; int v[100000][10]; int sz; bool a; void init() { memset(T[0],0,sizeof(T[0])); memset(v,0,sizeof(v)); sz=1; a=1; } int idx(char c) { return c-'0'; } void insert(char * s) { int l=strlen(s); int u=0,t; for (int i=0;i<l;i++) { t=idx(s[i]); if (T[u][t]==0) { memset(T[sz],0,sizeof(T[sz])); T[u][t]=sz++; } u=T[u][t]; if (v[u][t]==1) a=0; } if (T[u][t]!=0) a=0; v[u][t]=1; } int main() { int r; cin>>r; while (r--) { int n; init(); cin>>n; char s[15]; for (int i=1;i<=n;i++) { scanf("%s",s); insert(s); } if (a) printf("YES\n"); else printf("NO\n"); } }
相关文章推荐
- poj 3630 字典树
- POJ 3630 Phone List 静态字典树Trietree
- poj 3630 Phone List 【字典树】【判断一个字符串集里面 是否存在一个字符串是另一个字符串前缀】
- POJ 3630 Phone List(字典树)
- POJ 3630 Phone List (字典树)
- poj 3630 Phone List( 简单字典树 )
- POJ 3630 Phone List 静态字典树
- 【POJ】3630 - Phone List(字典树(静态建树))
- POJ 3630 字典树
- 字典树 之 hdu 1671 poj 3630
- POJ 3630 && HDU 1671 Phone list(静态字典树)
- poj 3630 || hdu 1671 Phone List (字典树)
- 字典树 之 hdu 1671 poj 3630
- poj 3630 静态字典树入门
- poj 3630 Phone List trie树—字典树 静态数组版!!!
- poj--3630+字典树基础题
- POJ 3630 静态字典树
- POJ 3630 Phone List(字典树,公共前缀问题)
- POJ 3630 && HDU 1671 Phone list(静态字典树)
- POJ3630 字典树