//// main.cpp// KMP//// Created by liuzhe on 16/7/16.// Copyright © 2016年 my_code. All rights reserved.//#include <iostream>#include <algorithm>#include <string>#include <cstring>#include <cstdio>using namespace std;char a[1000000],b[1000000];int p[1000000],n,m,ans;int len;void fail(){ int i,j=-1; p[0]=-1; while(i<len) { if(j==-1||a[i]==a[j]) p[++i]=++j; else j=p[j]; }}int main(){ while(scanf("%s",a)!=EOF) { if(a[0]=='.') break; int i=0,j=-1; p[0]=-1; len=strlen(a); fail(); ans=1; if(len%(len-p[len])==0) ans=len/(len-p[len]); PRintf("%d/n",ans); } return 0;}
新闻热点
疑难解答