【题目链接:NYOJ-1121】
例如:abcabcabc
该字符串的长度为9,那么周期串的长度len只可能为{1,3,9},否则就不可能构成周期串。
接下来,就是要在各周期间进行比较。描述不清。。。自己走一遍就懂了。
1 #include<iostream> 2 #include<cstring> 3 using namespace std; 4 const int MAXN = 202; 5 char s[MAXN]; 6 int main(){ 7 while((cin >> s)){ 8 int len = strlen(s); 9 for(int i = 1;i <= len;i++){ 10 if(len % i == 0){ 11 int run = 1; 12 for(int j = i;j < len;j++){ 13 if(s[j] != s[j % i]){ 14 run = 0; 15 break; 16 } 17 } 18 if(run){ 19 cout << i << endl; 20 break; 21 } 22 } 23 } 24 memset(s,‘\0‘,sizeof(s)); 25 } 26 return 0; 27 }
时间: 2024-10-12 00:02:10