题目大意:如果一个字符串可以由某个长度为k的字符串重复多次得到,则称该串以k为周期。
#include<stdio.h>
#include<string.h>
int main()
{
int k;
scanf("%d",&k);
while(k-->0){
char s[100];
scanf("%s",s);
int len = strlen(s);
for(int i =1;i<=len;i++){
if(len% i != 0) continue;//如果i不是len的倍数则跳过
int j =0;
for(;j<len;j++)
if(s[j] != s[j+i] || j+i == len)//如果有一个不符合,跳出
break;
if(j+i == len){//当j+i ==len时,则找到k
printf("%d\n",i);
break;
}
}
if(k)//根据输出格式,除了最后一个,前面的输出都要换行
printf("\n");
}
return 0;
}