bon

  C++博客 :: 首页 :: 联系 :: 聚合  :: 管理
  46 Posts :: 0 Stories :: 12 Comments :: 0 Trackbacks

常用链接

留言簿(2)

我参与的团队

搜索

  •  

最新评论

阅读排行榜

评论排行榜

POJ 2406
 1 #include <iostream>
 2 
 3 using namespace std;
 4 
 5 char s[1000001];
 6 
 7 void solve()
 8 {
 9     int l=strlen(s);
10     int i,j,k;
11     int maxi=-1;
12     for(i=1;i<=l;i++){
13         if(l%i!=0continue;
14         // from j to j+i
15         for(j=i;j<l;j+=i){
16             for(k=0;k<i;k++){
17                 if(s[k]!=s[j+k]) break;
18             }
19             if(k<i) break;
20         }
21         if(j==l) maxi=(maxi>(l/i))?maxi:(l/i);
22     }
23 
24     printf("%d\n",maxi);
25 }
26 
27 int main()
28 {
29     while(scanf("%s",s) && (strlen(s)!=1|| s[0]!='.'){
30         solve();
31     }
32     return 1;
33 }
posted on 2008-07-28 16:48 bon 阅读(398) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


Google PageRank 
Checker - Page Rank Calculator