zoukankan      html  css  js  c++  java
  • poj2406 Power Strings

    Power Strings
    Time Limit: 3000MS   Memory Limit: 65536K
    Total Submissions: 33273   Accepted: 13825

    Description

    Given two strings a and b we define a*b to be their concatenation. For example, if a = "abc" and b = "def" then a*b = "abcdef". If we think of concatenation as multiplication, exponentiation by a non-negative integer is defined in the normal way: a^0 = "" (the empty string) and a^(n+1) = a*(a^n).

    Input

    Each test case is a line of input representing s, a string of printable characters. The length of s will be at least 1 and will not exceed 1 million characters. A line containing a period follows the last test case.

    Output

    For each s you should print the largest n such that s = a^n for some string a.

    Sample Input

    abcd
    aaaa
    ababab
    .
    

    Sample Output

    1
    4
    3
    

    Hint

    This problem has huge input, use scanf instead of cin to avoid time limit exceed.

    Source

     1 #include<cstdio>
     2 #include<cstring>
     3 #include<iostream>
     4 #include<algorithm>
     5 using namespace std;
     6 
     7 int next[1000010],m;
     8 char s[1000010];
     9 
    10 void get_next()
    11 {
    12     int i=0,j=-1;
    13     next[0]=-1;
    14     while(i<m)
    15     {
    16         if(j==-1||s[i]==s[j])
    17         {
    18             i++;
    19             j++;
    20             next[i]=j;
    21         }
    22         else j=next[j];
    23     }
    24 }
    25 int main()
    26 {
    27     while(scanf("%s",s)!=EOF)
    28     {
    29         if(s[0]=='.')break;
    30         m=strlen(s);
    31         get_next();
    32         if(m%(m-next[m])==0)printf("%d
    ",m/(m-next[m]));
    33         else printf("1
    ");
    34     }
    35     return 0;
    36 }
    View Code
    随便写写。一点学习心得。。。--如果本文章没有注明转载则为原创文章,可以随意复制发表,但请注明出处与作者
  • 相关阅读:
    wepy ——$apply
    sql常用内置函数
    创建数据表
    wepy —— 组件之间通信
    sql表连接 —— join
    mongo int类型 数据 变成float
    修改Windows 2003的邮件服务器的最大附件限制
    让google.COM不再自动跳转到.CN
    [转载]浮点数在计算机中存储方式
    [转载]内存分配 知识,全局,局部,静态变量
  • 原文地址:https://www.cnblogs.com/ganhang-acm/p/4060539.html
Copyright © 2011-2022 走看看