P57 周期串

题目大意: 
求字符串的最小周期数.eg.hohoho的最小周期是2.

解题思路: 
枚举一个周期与相邻一个周期的字母进行比较.

#include<stdio.h>
#include<string.h>
char a[100];
int main()
{
    int n, flat, i;
    scanf("%d", &n);
    getchar();
    while (n--)
    {
        flat = 1;
        memset(a , '0', sizeof(a));
        scanf("%s",a);
        for (i=1; i<=strlen(a); i++)
        {
            if (strlen(a)%i==0)
            {
                flat=0;
                for (int j=0; a[i+j]!='\0'; j++)
                    if (a[j] != a[j+i])
                    {
                        flat=1;
                        break;
                    }
            }
            if(flat == 0)
                break;
        }
        printf("%d\n",i);
        if(n) printf("\n");
    }
}

 

posted @ 2018-04-16 11:46  远山笑你  阅读(92)  评论(0编辑  收藏  举报