最小周期串求解

/*周期串的求法
如果字符串可以由某个字符串重复多次得到,我们说该串以k为周期.输入长度不超过80的串,求最小周期.*/
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
    char word[100];
    scanf("%s",word);
    int len =strlen(word);
    for(int i=1;i<len;i++)if(len%i==0)
    {
        int ok=1;
        for(int j=i;j<len;j++)
            if(word[j]!=word[j%i])
            {
                ok=0;
                break;
            }
            if(ok)
            {
                printf("%d%\n",i);
                break;
            }
    }
    return 0;
}

 

posted @ 2012-11-18 22:23  myth_HG  阅读(787)  评论(0编辑  收藏  举报