nyoj-1121-周期串

来源:互联网 发布:神级优化的游戏 编辑:程序博客网 时间:2024/05/16 06:27

周期串

时间限制:1000 ms  |  内存限制:65535 KB
难度:1
描述

一个字符串可以由长度为k的字符串重复多次得到,我们说该串以k为周期,例如abcabcabcabc  以3为最小周期(注意它也可以以6和12为周期)

我们输入一个不超过200的串,输出它的最小周期(字符串区分大小写)

输入
有多组测试数据,每组输入一个字符串
输出
输出相应字符串的最小周期
样例输入
abcabcabcabcabcd
样例输出
34
#include<stdio.h>#include<string.h>char a[205],b[205];int main(){    int i,j,k,lea,leb;    while(scanf("%s",a)!=EOF)    {        lea=strlen(a);        leb=0;        for(i=0;i<lea;i++)        {            b[leb++]=a[i];            if(lea%leb==0)            {                for(j=leb,k=0;j<lea;j++,k++)                {                    if(k==leb) k=0;                    if(a[j]!=b[k]) break;                }                if(j==lea)                {                    printf("%d\n",leb);                    break;                }            }        }    }    return 0;}


0 0