UVA455-Periodic Strings

2018-10-22-18:54:46

原题链接

本题思路:暴力枚举可能是他周期的所有情况,遇到满足条件输出即可。

 1 #include <cstdio>
 2 #include <string>
 3 #include <iostream>
 4 using namespace std;
 5 
 6 int main()
 7 {
 8     int T;
 9     cin>>T;
10     while(T--){
11       string s;
12       cin>>s;
13       int k,len=s.length();
14       for(int i=1;i<=len;i++){
15         if(!(len%i)){
16           for(k=i;k<len;k++){
17             if(s[k]!=s[k%i])
18               break;
19           }
20           if(k==len){
21            cout<<i<<endl;
22            break;
23           }
24         }
25       }
26       if(T) cout<<endl;
27     }
28     return 0;
29 }

本题总结:遇到譬如周期,循环链等题目出现时,可以考虑对相应关键字暴力取余即可。

 

posted @ 2018-10-22 18:54  Cruel_King  阅读(138)  评论(0编辑  收藏  举报