字符串
Miical
这个作者很懒,什么都没留下…
展开
-
【KMP算法/最小公共前后缀】P3435 [POI2006]OKR-Periods of Words
题目大意对于一个仅含小写字母的字符串 a,p 为 a 的前缀且 p不等于a,那么我们称 p 为 a 的 proper 前缀。规定字符串 Q(可以是空串)表示 a 的周期,当且仅当 Q 是 aa 的 proper 前缀且 aa 是 Q+Q的前缀。例如 ab 是 abab 的一个周期,因为 ab 是 abab 的 proper 前缀,且 abab 是 ab+ab 的前缀。求给定字符串所有前缀的最大周期长度之和。思路只需要找出每一个子串的最小公共前后缀。KMP求出nxt[];之后保证nxt[j]&原创 2020-09-30 18:28:04 · 1231 阅读 · 0 评论 -
【模板】KMP字符串匹配
#include<iostream>#include<cstring>#include<cstdio>using namespace std;const int MAXN=1000005;char p[MAXN],s[MAXN];int plen,slen,nxt[MAXN];void calc_nxt(){ nxt[0]=-1; int k=-1; for(int i=1;i<plen;i++){ while(k>-1&&原创 2020-09-30 16:01:51 · 177 阅读 · 0 评论