UVa 455 - Periodic Strings
2017-11-15 19:40
369 查看
题目:求一个串的最小循环节。
分析:暴力,字符串。数据量较小,直接使用枚举法。
枚举循环节的长度,匹配判断,找到第一组解即为最小。
说明:(⊙_⊙)。
[delphi]
view plain
copy
#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
分析:暴力,字符串。数据量较小,直接使用枚举法。
枚举循环节的长度,匹配判断,找到第一组解即为最小。
说明:(⊙_⊙)。
[delphi]
view plain
copy
#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
相关文章推荐
- UVa 455 - Periodic Strings
- UVa 455 - Periodic Strings
- UVa 455 - Periodic Strings
- UVa455 - Periodic Strings
- UVa 455 - Periodic Strings
- UVA - 455 Periodic Strings
- Periodic Strings UVA - 455
- UVa 455 - Periodic Strings
- UVa 455-Periodic Strings
- [UVA455]Periodic Strings
- UVA 455 Periodic Strings
- UVa455 Periodic Strings
- UVa 455 - Periodic Strings
- uva455 Periodic Strings
- Periodic Strings UVA - 455
- uva 455 - Periodic Strings (找字符串周期)
- UVa455 Periodic Strings
- UVA 455 Periodic Strings
- Uva 455-periodic strings
- UVA455 Periodic Strings