HDU1247——Hat’s Word
来源:互联网 发布:原生ajax请求json数据 编辑:程序博客网 时间:2024/06/07 14:45
简单的模板套用。先把所有的字都加入到字典树里,然后一个个字分成两部分去搜,看是否符合条件。
#include <stdio.h>#include <ctype.h>#include <string.h>#include <stdlib.h>#include <limits.h>#include <math.h>#include <algorithm>using namespace std;const int MAX=26;typedef struct TrieNode{ int flag; struct TrieNode *next[MAX]; } TrieNode;TrieNode Memory[1000000]; int allocp = 0;char s[50005][100];TrieNode * createTrieNode(){ TrieNode * tmp = &Memory[allocp++]; tmp->flag = 1; for (int i = 0; i < MAX; i++) tmp->next[i] = NULL; return tmp;}void insertTrie(TrieNode * pRoot, char * str){ TrieNode * tmp = pRoot; int i = 0, k; while (str[i]) { k = str[i] - 'a'; if (tmp->next[k]) { } else { tmp->next[k] = createTrieNode(); } tmp = tmp->next[k]; i++; }tmp->flag=0;}int searchTrie(TrieNode * root, char * str){ if (root == NULL) return 0; TrieNode * tmp = root; int i = 0, k; while (str[i]) { k = str[i] - 'a'; if (tmp->next[k]) {if(str[i+1]=='\0'&&tmp->next[k]->flag==0)return 1; tmp = tmp->next[k]; } else return 0; i++; } return 0; }int main(void){ TrieNode *Root = createTrieNode(); int i=0;while(scanf("%s",s[i])!=EOF){//printf("%s\n",s[i]);insertTrie(Root,s[i]);i++;}int j;int k;int length;char t1[100],t2[100];for(j=0;j<i;j++){length=strlen(s[j]);for(k=1;k<length;k++){strcpy(t1,s[j]);t1[k]='\0';strcpy(t2,s[j]+k);//printf("%s %s\n",t1,t2);if(searchTrie(Root,t1)&&searchTrie(Root,t2)){printf("%s\n",s[j]);break;}}} return 0;}
0 0
- HDU1247——Hat’s Word
- hdu1247 Hat’s Words
- HDU1247 Hat’s Words
- hdu1247 Hat’s Words
- hdu1247 hat's words
- hdu1247 Hat’s Words
- hdu1247 Hat’s Words
- hdu1247 Hat’s Words
- 数据结构之字典树---hdu1247---Hat‘s word
- 【Trie】【HDU1247】【Hat’s Wordsfd2】
- hash hdu1247 Hat’s Words
- HDU1247 Hat’s Words【Trie】
- Hat's Words hdu1247 trie
- HDU1247——Hat’s Words(map黑科技,字符串)
- 【字典树】 hdu1247 Hat’s Words
- Hat’s Words hdu1247 字典树+搜索
- HDU1247-Hat’s Words(字典树)
- Hat’s Words(hdu1247字典树)
- Android之优化技术 -- Java高级优化技术
- 简单计算器示例
- 从1,3,5,7,9,11,13,15中选3个数(选择可重复)作和得30
- 数据结构各种排序算法及其java程序实现
- Mac截屏快捷键
- HDU1247——Hat’s Word
- java如何入门?(java20周年)
- Android之优化技术--android GC内存泄露问题
- 浅析adbd setuid
- HttpClient使用Post和Get提交参数
- 老浏览器(特别是IE)支持html5标签
- 高精度 UVA465 Overflow
- 详解Xcode 6的视图调试
- 第三章 10题 三角形面积