UVa 455 - Periodic Strings
2014-11-11 21:32
288 查看
一开始想的是求出每个字符出现的次数并且储存,并且每个字符的次数应该相同,然后用字符串的长度除以这个次数。但是这个解法不适合heedheedheed这样的或者12112121211212这样的问题求解。
所以采用枚举最小周期的大小并测试,直到比较通过。
#include<stdio.h> #include<stdlib.h> #include<string.h> char str[104]; int main() { int n; while (~scanf("%d",&n)) //这里等于while(scanf("%d",&n) != EOF) while (n --) { scanf("%s",str); int len = strlen(str); int k,i; for (k,i = 1 ; i <= len ; ++ i) if (len%i == 0) { for (k = i ; k < len ; ++ k) if (str[k] != str[k%i]) break; if (k == len) { printf("%d\n",i); break; } } if (n) printf("\n"); } return 0; }
相关文章推荐
- UVa 455 - Periodic Strings
- 3.4 Periodic Strings UVA455
- 【Uva 455】 Periodic Strings
- UVa 455 - Periodic Strings【字符串】
- UVa455--Periodic Strings
- UVA 455 - Periodic Strings
- UVA - 455 Periodic Strings
- UVa455 Periodic Strings
- UVA455 Periodic Strings
- UVa 455:Periodic Strings
- uva 455 Periodic Strings
- UVa 455 - Periodic Strings
- uva455 periodic strings
- UVA455 Periodic Strings
- UVA - 455 Periodic Strings
- UVa 455 Periodic Strings
- 习题3-4 Periodic Strings UVa455
- UVa 455 Periodic Strings
- uva455 - Periodic Strings
- 算法竞赛入门经典第三章3-4 Periodic Strings UVA - 455