• Periodic Strings ( UVA


    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

    #include <cstdio>
    #include <string.h>
    #define N 1024
    #define MAXN 0x3f3f3f3f
    #include <map>
    #include <string>
    #include <cmath>
    #define pi acos(-1.0)
    #include <algorithm>
    #include <iostream>
    #include <iomanip>
    using namespace std;
    int a[1000000]; 
    string ch[100+5];
    int main()
    {
        int t,n,m,k,i,j,ans;
        string str,sub,st;
        while(cin>>t)
        {
            while(t--)
            {
                cin>>str;
                n=str.size();ans=0;
                //cout<<str<<endl; 
                for(i=1;i<=n;i++)
                {
                    //sub=str.substr(0,i);
                    if(n%i==0) 
                    {
                        for(j=i;j<n;j++) if(str[j]!=str[j%i]) break;
                        if(j==n) {cout<<i<<endl;break;}
                    }
                }
                if(t) cout<<endl;
            }
        }
        return 0; 
    }
    所遇皆星河
  • 相关阅读:
    Boost练习程序(program_options)
    vim一般设置
    删除文件夹及其子文件
    linux搜索一个文件
    窗口最大最小化
    3dmax 学习
    打造个人电脑安全终极防线
    Cacls Command Question
    vc++学习(六)——代码学习
    学习3dmax(四)
  • 原文地址:https://www.cnblogs.com/Shallow-dream/p/11632261.html
Copyright © 2020-2023  润新知