随笔分类 -  KMP

POJ2406 Power Strings
摘要:POJ2406#include#include#includeusing namespace std;const int maxn=1000010;char b[maxn];int next[maxn];void prekmp(){ int j=-1;next[0]=-1; for(int i=1;b[i];++i) { while(j!=-1&&b[i]!=b[j+1]) j=next[j]; if(b[i]==b[j+1]) j++; next[i]=j; }}int main(){ while(scanf("%s",... 阅读全文

posted @ 2013-09-09 00:29 Amo. 阅读(205) 评论(0) 推荐(0)

POJ1961Period
摘要:POJ1961#include#include#includeusing namespace std;const int maxn=1000010;char b[maxn];int next[maxn];void prekmp(){ int j=-1;next[0]=-1; for(int i=1;b[i];++i) { while(j!=-1&&b[i]!=b[j+1]) j=next[j]; if(b[i]==b[j+1]) j++; next[i]=j; }}int main(){ int n; while(s... 阅读全文

posted @ 2013-09-08 23:52 Amo. 阅读(168) 评论(0) 推荐(0)

POJ2752Seek the Name, Seek the Fame
摘要:#include#include#includeusing namespace std;const int maxn=400010;char b[maxn];int next[maxn],a[maxn];void prekmp(){ int j=-1;next[0]=-1; for(int i=1;b[i];++i) { while(j!=-1&&b[i]!=b[j+1]) j=next[j]; if(b[i]==b[j+1]) j++; next[i]=j; }}int main(){ while(scanf("%s",... 阅读全文

posted @ 2013-09-08 23:15 Amo. 阅读(216) 评论(0) 推荐(0)

POJ3461Oulipo KMP
摘要:http://poj.org/problem?id=3461//LIMIT:1000ms 65536kMemory:1208KTime:110MS#include#includeusing namespace std;const int maxn=10010;const int maxm=1000010;char a[maxm],b[maxn];//a为源串,b为待匹配串;int next[maxm];void prekmp(){ int j=-1;next[0]=-1; for(int i=1;b[i];++i) { while(j!=-1&&b[i]!=b... 阅读全文

posted @ 2013-09-08 22:48 Amo. 阅读(259) 评论(0) 推荐(0)

导航