顿时感觉世界无爱了,调试了很长很长很长时间(虽然这其中也在玩),尝试了各种数据,发现答案并没有问题,可是提交上去就WA,一共WA了3次! 也仔细读了题,每两组输出数据之间也有空行,可还是不对! 最后被逼无奈,去网上搜了一下别人写的代码,结果发现最后一个输出数据后无空行!!!! 还能在坑吗!!! 能不能!,还有这不应该是格式错误吗! 浪费了这么长时间,都是泪啊! 睡觉!!!!!!!
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main()
{
int m,n,i,j,k,r,s,t,R,q;
char a[100],c[100];
scanf("%d",&m);
for(k=1; k<=m; k++)
{
memset(a,'\0',sizeof(a));
memset(c,'\0',sizeof(c));
scanf("%s",a);
n=strlen(a);
for(i=1; i<=n; i++)
{
if(n%i != 0)
continue;
if(i == n)
{printf("%d\n",n); break;}
t=0;
for(j=0; j<i; j++)
c[t++]=a[j];
r=i; R=i; t=0; s=0; q=1;
for(j=r; j<n; j++)
{
if( a[j] != c[t++] )
s=1;
if(s == 1)
goto loop;
if(j== r+q*R-1)
{t=0; q++;}
}
if(s == 0)
{
printf("%d\n",i);
break;
}
loop: continue;
}
if(k!=m)
printf("\n");
}
return 0;
}