1. 程式人生 > >UVA455 周期串(Periodic Strings)

UVA455 周期串(Periodic Strings)

period log gif nbsp 周期 != 字符 ges 題意

技術分享

題意:求出一個字符串的最小周期

思路:1、枚舉周期內的字符 2、可以用%的方法減少法1的枚舉量。

註意:枚舉包括 長度為strlen(s)的周期

技術分享
 1 #include<cstdio>
 2 #include<cstring>
 3 int main()
 4 {
 5     int n;
 6     scanf("%d",&n);
 7     while(n--)
 8     {
 9         char str[85];
10         scanf("%s",str);
11         int len = strlen(str);
12 for(int i=1; i<=len; i++) //以i為周期進行枚舉 13 { 14 if(len%i==0) 15 { 16 int ok=1; 17 for(int j=i; j<len; j++) 18 if(str[j] != str[j%i]){ ok=0; break; } 19 if(ok){ printf("%d",i); break;}
20 } 21 } 22 if(n) printf("\n\n"); 23 else printf("\n"); 24 } 25 return 0; 26 }
View Code

UVA455 周期串(Periodic Strings)