1 #include 2 #include 3 #include 4 5 using namespace std; 6 7 char s[1000010]; 8 char t[10010]; 9 int next1[10010];10 int m,n;11 12 void getnext...
分类:
其他好文 时间:
2015-10-06 14:01:36
阅读次数:
130
1 #include 2 #include 3 4 using namespace std; 5 6 int n,m; 7 int t[100010]; 8 int s[1000010]; 9 int next1[100010];10 11 void getnext()12 {13 ...
分类:
其他好文 时间:
2015-10-06 11:34:34
阅读次数:
128
转载自:http://blog.csdn.net/joylnwang/article/details/6778316讲的应该是蛮好的。恩。因为我看懂了。代码还是不太懂。算法了解了。感觉最精辟的一句话就是next[j]是所有满足pattern[1...k - 1] = pattern[(j - (k ...
分类:
其他好文 时间:
2015-10-05 19:29:06
阅读次数:
199
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2222一个常见的例子就是给出n个单词,再给出一段包含m个字符的文章,让你找出有多少个单词在文章里出现过;本题就是最基础的模板;在此之前需要理解kmp和字典树(trie);Trie树有3个基本性质:(1)根...
分类:
其他好文 时间:
2015-10-04 18:22:54
阅读次数:
244
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4763题意就是求s串中满足EAEBE格式的E的最大长度;我们可以枚举前缀和后缀的所有匹配(k)看是否在s[k,len-k]中;如果不在它中间那么就让k=Next[k],刚开始想的是k--;但是这样循环次数...
分类:
编程语言 时间:
2015-10-03 20:43:12
阅读次数:
156
http://acm.hdu.edu.cn/showproblem.php?pid=4847Wow! Such Doge!Time Limit:1000MSMemory Limit:32768KB64bit IO Format:%I64d & %I64uSubmitStatusPracticeHDU...
分类:
其他好文 时间:
2015-10-03 19:30:51
阅读次数:
184
http://acm.hdu.edu.cn/showproblem.php?pid=4847Wow! Such Doge!Time Limit:1000MSMemory Limit:32768KB64bit IO Format:%I64d & %I64uSubmitStatusPracticeHDU...
分类:
其他好文 时间:
2015-10-03 19:27:51
阅读次数:
239
前言 之前对kmp算法虽然了解它的原理,即求出P0···Pi的最大相同前后缀长度k;但是问题在于如何求出这个最大前后缀长度呢?我觉得网上很多帖子都说的不是很清楚,总感觉没有把那层纸戳破,后来翻看算法导论,32章 字符串匹配虽然讲到了对前后缀计算的正确性,但是大量的推理证明不大好理解,没有与程序...
分类:
编程语言 时间:
2015-10-01 10:20:47
阅读次数:
187
#include#include#includeusing namespace std;int next[100];void set_next(char str[]){ int len,j,i; len=strlen(str); next[0]=-1; j=-1; i=0; ...
分类:
其他好文 时间:
2015-09-29 20:21:37
阅读次数:
191
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3374题意很简单,输出的是最小字典序的编号,最小字典序个数,最大字典序编号,最大字典序个数。可以想一下因为是循环移动的, 所以最大字典序个数和最小字典序个数相等=循环节;本题有一个最大最小表示法:这里简单...
分类:
其他好文 时间:
2015-09-28 22:14:01
阅读次数:
305