码迷,mamicode.com
首页 > 其他好文 > 详细

UVa 455 Periodic Strings (周期串)

时间:2015-01-18 21:07:21      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:

Time Limit: 3000MS   Memory Limit: Unknown   64bit IO Format: %lld & %llu

Status

Description

技术分享

 Periodic Strings 

A character string is said to have period k if it can be formed by concatenating one or more repetitions of another string of length k. For example, the string "abcabcabcabc" has period 3, since it is formed by 4 repetitions of the string "abc". It also has periods 6 (two repetitions of "abcabc") and 12 (one repetition of "abcabcabcabc").

Write a program to read a character string and determine its smallest period.

Input

The first line oif the input file will contain a single integer N indicating how many test case that your program will test followed by a blank line. Each test case will contain a single character string of up to 80 non-blank characters. Two consecutive input will separated by a blank line.

Output

An integer denoting the smallest period of the input string for each input. Two consecutive output are separated by a blank line.

Sample Input

1

HoHoHo

Sample Output

2
大致题意:如果一个字符串可以由某个长度为k的字符串重复多次得到,则称该串以k为周期。求给出的字符串的最小周期。
 1 #include<iostream>
 2 #include<cstring>
 3 using namespace std;
 4 int main()
 5 {
 6     int n,j;
 7     cin>>n;
 8     while(n--)
 9     {
10         char a[1000];
11         char b[1000];
12         b[0]=\0;
13         cin>>a;
14         strcat(b,a);
15         strcat(b,a);
16         int num=strlen(a);
17         for(int i=1;i<=num;i++)
18         {
19             int k=i;
20             if(strncmp(b+i,a,num-i) ==0 && num%k == 0 )
21             {
22                 cout<<k;
23                 break;
24             }
25         }
26         if(j!=n)
27             cout<<endl<<endl;
28         if(j==n)
29             cout<<endl;
30     }
31     return 0;
32 }

 

UVa 455 Periodic Strings (周期串)

标签:

原文地址:http://www.cnblogs.com/caterpillarofharvard/p/4232195.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!