求一个字符串的最小正周期

来源:互联网 发布:java生成dump文件命令 编辑:程序博客网 时间:2024/05/16 18:27
#include <iostream>
#include<string>
using namespace std;
int main()
{
    string str;
    cin>>str;
    int hh=0;
    int tmp=0;
    int i;
    int len=str.size();
    for(i=1;i<len;i++)
    {
        if(len%i==0)
        {
            tmp=1;
            for(int j=i;j<len;j++)
            {
                if(str[j%i]!=str[j]) //思维
                    {
                        tmp=0;
                        break;
                    }
            }
        }
        if(tmp==1)
        {
            hh=1;
            cout<<i<<endl;
                break;
        }
    }
    if(hh==0)
        cout<<len<<endl;
    return 0;
}
0 0