題目:求一個串的最小循環節。
分析:暴力,字符串。數據量較小,直接使用枚舉法。
枚舉循環節的長度,匹配判斷,找到第一組解即爲最小。
說明:(⊙_⊙)。
- #include <iostream>
- #include <cstdlib>
- #include <cstring>
- #include <cstdio>
- using namespace std;
- char str[104];
- int main()
- {
- int n;
- while (~scanf("%d",&n))
- while (n --) {
- scanf("%s",str);
- int len = strlen(str);
- for (int 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;
- }
原文地址:http://blog.csdn.net/mobius_strip/article/details/40584263