字符串求最小周期,思路就是通过比较 str[k] != str[k%i] ,如果有不符合条件语句的就break。
这一题直接暴力解决即可。
#include<stdio.h>
#include<string.h>
#define maxn 80+5
char str[maxn];
int main()
{
int T;
scanf("%d", &T);
while(T--)
{
memset(str, 0, sizeof(str));
scanf("%s", str);
int len = strlen(str);
for(int k, i = 1; i <= len; i++)
{
if(len%i == 0)
{
for(k = i; k < len; k++)
if(str[k] != str[k%i]) break;
if(k == len)
{
printf("%d\n", i);
break;
}
}
}
if(T) printf("\n");
}
return 0;
}
2028

被折叠的 条评论
为什么被折叠?



