UVa455--Periodic Strings

来源:互联网 发布:简约官网源码 编辑:程序博客网 时间:2024/06/08 03:36

题目:算一个串的最小周期
思路:枚举,判断所得字符串是否为周期字符串。

#include <stdio.h>#include <string.h>int i,j;int isTthePeriod(char s[],int T)  //判断是否为周期字符串{    for(i=0;i<T;i++)    {        for(j=i+T;j<strlen(s);j+=T)            if(s[i]!=s[j]) return 0;    }    return 1;}int main(){    int T,kase,len,i;    scanf("%d",&T);    for(kase=1;kase<=T;kase++)    {        char s[100];        while(scanf("%s",s),len=strlen(s),!len);        for(i=1;i<=len;i++)            if(len%i ==0 && isTthePeriod(s,i)) break;//枚举周期i        if(kase !=1) putchar('\n');        printf("%d\n",i);    }    return 0;}
0 0