题目链接:点击打开链接
解题思路:这题一直卡,WA,我以为是我逻辑问题,后来才发现是输出格式,两行输出之间有空行且最后一行输出没有空行。UVa上没有PE,显示的是WA,真是醉醉的。
思路也很简单,暴力,首先循环节一定是字符串长度的约数,接下来就是判断了。
代码:
#include <iostream>
#include <cstdlib>
#include <cstdio>
#include <cstring>
#include <cmath>
using namespace std;
int main()
{
int n;
scanf("%d", &n);
while(n--)
{
string s;
cin >> s;
int len = s.length();
for(int i = 1; i <= len; ++i)
{
string ans = s.substr(0, i);
if(len % i == 0)
{
int flag = 1;
for(int j = i; j < len; j += i)
{
string tmp = s.substr(j, i);
if(ans != tmp)
{
flag = 0;
break;
}
}
if(flag)
{
printf("%d\n", i);
break;
}
}
}
if(n)
printf("\n");
}
return 0;
}