KMP算法
飘过的小牛
不停成长才会洞悉成功的奥妙,fighting!
展开
-
POJ-2752 Seek the Name, Seek the Fame
题目链接:http://poj.org/problem?id=2752题目大意:给你一个字符串S。假如为ababcababababcabab.找出这个字符串中所有的前缀等于后缀的子串。输出它们的长度。第一个为a,最后一个为b,所以1不行。前两个为ab,最后二个也为ab,所以2行。前三个为aba,后三个为bab,所以3不行。以此类推。。找出全部当然,全部字符串也是可以的。原创 2011-11-14 13:46:40 · 2162 阅读 · 0 评论 -
POJ-3461 Oulipo
题目链接:http://poj.org/problem?id=3461题目大意:给你两个字符串p和s,求出p在s中出现的次数。解题思路:这道题跟POJ2406有点相似,那道题是求abcabcabc,则就是3次。而这道题,abababa中aba出现了3次。区别在于,2406求的是模式串的匹配问题,而这道题求的是主串和子串的匹配问题。关键在于那个j=nextval[j]的意原创 2011-11-14 21:55:17 · 7554 阅读 · 5 评论 -
Hdu-1711 Number Sequence
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1711题目大意:从s串中如果能找出p串,则输出p串在s串的位置(两个串下标都从1开始)解题思路:KMP算法的简单模拟代码如下:#include#include#include#includeusing namespace std;int s[1000原创 2011-11-11 13:49:29 · 1690 阅读 · 0 评论 -
HDU-3746 Cyclic Nacklace
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3746题目大意:给你一个字符串,要求将字符串的全部字符最少循环2次需要添加的字符数。例子:abcabc 已经循环2次,添加数为0abcac 没有循环2次,添加字符abcac。数目为5.abcabcab 已经循环过2次,但第三次不完整,需要添加数为1解题思路:原创 2011-11-13 12:00:36 · 6309 阅读 · 4 评论 -
POJ-2406 Power Strings
题目链接:http://poj.org/problem?id=2406解题思路:水题。。。就是求模式串中的子串循环次数。代码如下:#include#include#include#include#includeusing namespace std;#define N 1000010char s[N];int nextval[N];int len;void原创 2011-11-14 09:52:06 · 1601 阅读 · 0 评论 -
POJ-1961 Period
题目链接:http://poj.org/problem?id=1961题目大意:给你一个字符串,求这个字符串到第i个字符为止的循环节的次数。比如aabaabaabaab,长度为12.到第二个a时,a出现2次,输出2.到第二个b时,aab出现了2次,输出2.到第三个b时,aab出现3次,输出3.到第四个b时,aab出现4次,输出4.解题思路:这道题好像就是POJ 2406原创 2011-11-14 10:32:45 · 6878 阅读 · 0 评论