hdu 4763 Theme Section(KMP)

题意:在一个字符串中,找出一个最长的子串,该子串满足条件:在串的开头、中间和结尾分别出现一次且不能交叉重叠。 思路:KMP求出next,确定串的前缀和后缀的公共长度,再在中间部分查找是否存在满足条件的子串。 将串分为3段进行查找,如图, -----------------      -----...

2016-01-23 22:56:12

阅读数:311

评论数:0

hdu 3336 Count the string(KMP+dp)

题意:将字符串的每个前缀作为模式串,字符串作为主串,求模式串在主串中出现的次数和。 #include #include #include using namespace std; #define MAXN 200005//字符串长度 #define MOD 10007 char s[MAXN...

2016-01-23 20:23:13

阅读数:260

评论数:0

hdu 2594 Simpsons’ Hidden Talents(KMP)

题意:给定两个字符串s1,s2,找出s1的前缀和s2的后缀的公共长度。 思路:合并字符串后求next数组。 #include #include #include #include using namespace std; char s1[100010],s2[50005]; int _nex...

2016-01-23 19:09:23

阅读数:220

评论数:0

poj 2406 Power Strings(KMP求最大循环次数)

题意:在字符串中求出最大的循环次数。 #include #include #include using namespace std; const int M = 1000010; int nxt[M]; char T[M]; int n,m; int ans; void getnext(){...

2016-01-23 18:22:48

阅读数:272

评论数:0

hdu 1358 Period(KMP循环节)

题意:给定一个字符串,求出所有循环的前缀串,输出前缀串的长度和循环的次数(大于一才算循环串)。 #include #include #include using namespace std; #define MAXN 1000005//字符串长度 char str[MAXN]; int _n...

2016-01-23 18:10:32

阅读数:236

评论数:0

hdu 3746 Cyclic Nacklace(KMP求循环节)

题目大意: 给你一个字符串,要求将字符串的全部字符最少循环2次需要添加的字符数。 例子: abcabc 已经循环2次,添加数为0。 abcac 没有循环2次,添加字符abcac。数目为5。 abcabcab 已经循环过2次,但第三次不完整,需要添加数为1。 循环节知识:http://www.cn...

2016-01-23 18:00:17

阅读数:231

评论数:0

hdu 2087 剪花布条(KMP)

题意:KMP算法统计主串中包含模式串的个数,模式串在主串中不可重叠。 如:s="aaaaaa"   t="aa"  则t在s中出现3次,而不是5次。需在每次成功匹配后t的指针重新指向从串首 #include #include #include using n...

2016-01-23 17:05:55

阅读数:215

评论数:0

hdu 1686 Oulipo(KMP)

题意:KMP算法查找模式串在主串中出现的次数。 #include #include #include using namespace std; #define MAXN 10005//字符串长度 char W[MAXN]; char T[1000005]; int _next[MAXN]; ...

2016-01-23 16:53:37

阅读数:209

评论数:0

hdu 1711 Number Sequence(KMP算法)

题意:KMP匹配,返回模式串第一次与主串匹配的位置。 #include #include #include using namespace std; #define MAXN 10005//字符串长度 int a[1000005]; int b[MAXN]; int _next[MAXN]...

2016-01-23 16:51:06

阅读数:229

评论数:0

hust 1010 The Minimum Length(KMP求最小循环节)

最小循环节:http://www.cnblogs.com/jackge/archive/2013/01/05/2846006.html 代码 #include #include #define N 1000005 char str[N]; int next[N]; void getNext...

2015-10-31 22:25:33

阅读数:331

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭