Periodic Strings UVA - 455(超详细)

 

Periodic Strings UVA - 455(超详细)

#include<iostream>
#include<string.h>
using namespace std;
char a[101]; int n, i, j;
int main()
{
	while (cin >> n)
	{
		while (n--)
		{
			cin >> a;//注意!!!
			int len = strlen(a);
			for (i = 1; i <= len; i++)
			{//这个循环字符段肯定被长度整除
				if (len%i == 0)
				{//内部循环
					for (j = i; j < len; j++)
					{//找到可能的循环的节的最后一位
						if (a[j] != a[j%i])
							break;//循环到最后不满足就退出
					}
					if (j == len)
					{//满足,输出循环节最后一位
						cout << i << endl;
						break;
					}
				}
			}
			if (n!=0)//一定注意格式
				cout << endl;
		}
	}
}