POJ 2406 入门KMP
2012-11-04 16:33
169 查看
以前写过一点字符串匹配方面的题目,但是理解不深刻,这次打算从入门级的步步深入
题意:求字符串子串的最大周期,至于要对字符串进行一遍预处理即可
题意:求字符串子串的最大周期,至于要对字符串进行一遍预处理即可
#include <cstdio> #include <cstdlib> #include <cstring> char b[1000010]; int p[1000010]; void getp(int m) { p[1] = 0; int j = 0; for (int i = 2; i <= m; ++i) { while (j > 0 && b[j+1] != b[i]) j = p[j]; if (b[j+1] == b[i]) ++j; p[i] = j; } } int main() { while (scanf("%s", b + 1) != EOF) { if (b[1] == '.') break; int m = strlen(b + 1); getp(m); if (m % (m-p[m]) == 0) printf("%d\n", m/(m-p[m])); else printf("1\n"); } return 0; }
相关文章推荐
- poj 2406 Power Strings(KMP入门,next函数理解)
- poj_2406_kmp_入门_精华操作_解释
- KMP入门题 Hdu 1711 2594 3746 HUST 1010 Poj 3461 2752 2406 1961 FZU 1901
- poj2406 Power Strings(KMP)
- [POJ 2406]Power Strings(kmp)
- poj 2406 Power Strings kmp基础
- POJ 2406 Power Strings (KMP)
- poj 3461 Oulipo(简单的kmp入门)
- POJ_2406_Power Strings[KMP]
- POJ2406_Power Strings_KMP_求最短重复子序列
- poj2406(KMP 求循环节的个数)Power Strings --
- POJ 2406 Power Strings(KMP)
- POJ 2406 Power Strings (kmp next数组)
- poj--2406--Power Strings(KMP)
- POJ 2406 Power Strings(KMP)
- poj-2406-Power Strings(KMP)
- 【KMP(循环节)】poj 2406 Power Strings(外:hdu 1358 Period)
- [kuangbin带你飞]专题十六 KMP & 扩展KMP & Manacher G POJ 2406
- poj 2406 Power Strings[kmp,next数组的应用]
- poj 2406 power string(KMP)