Time Limit: 3000MS | Memory Limit: Unknown | 64bit IO Format: %lld & %llu |
Description
Periodic Strings |
A character string is said to have period k if it can be formed by concatenating one or more repetitions of another string of length k. For example, the string "abcabcabcabc" has period 3, since it is formed by 4 repetitions of the string "abc". It also has periods 6 (two repetitions of "abcabc") and 12 (one repetition of "abcabcabcabc").
Write a program to read a character string and determine its smallest period.
Input
The first line oif the input file will contain a single integer N indicating how many test case that your program will test followed by a blank line. Each test case will contain a single character string of up to 80 non-blank characters. Two consecutive input will separated by a blank line.
Output
An integer denoting the smallest period of the input string for each input. Two consecutive output are separated by a blank line.
Sample Input
1 HoHoHo
Sample Output
2
大致题意:如果一个字符串可以由某个长度为k的字符串重复多次得到,则称该串以k为周期。求给出的字符串的最小周期。
1 #include<iostream> 2 #include<cstring> 3 using namespace std; 4 int main() 5 { 6 int n,j; 7 cin>>n; 8 while(n--) 9 { 10 char a[1000]; 11 char b[1000]; 12 b[0]='