zoukankan      html  css  js  c++  java
  • POJ 2406

     1 #include<iostream>
     2 #include<stdio.h>
     3 #define MAXN 1000001
     4 using namespace std;
     5 
     6 char c[MAXN];
     7 int next[MAXN];
     8 
     9 void give_next(int len)
    10 {
    11     int i;
    12     int j;
    13     i = 0;
    14     j = -1;
    15        next[0] = -1;//next[0]初始化为-1.
    16        while(i < len)
    17     {
    18         if(j == -1 || c[i] == c[j])//从零开始记录next数组
    19     {
    20             i ++;
    21          j ++;
    22             next[i] = j;
    23     }
    24     else
    25            j = next[j];
    26     }
    27 }
    28 
    29 
    30 int main()
    31 {
    32     //freopen("acm.acm","r",stdin);
    33     int len;
    34     int tem;
    35     while(cin>>c)
    36     {
    37         if(c[0] == '.')
    38             break;
    39         //cout<<c<<endl;
    40         len = strlen(c);
    41         give_next(len);
    42         tem = len - next[len];
    43         if(len % tem == 0)
    44         {
    45             cout<<len/tem<<endl;
    46         }
    47         else
    48             cout<<1<<endl;
    49     }
    50 }
  • 相关阅读:
    12.22冲刺总结
    Android远程服务
    短信电话监听
    Android本地服务
    意图
    多线程下载
    异步HTTP请求
    提交数据到服务器
    通过HTTP访问网络资源
    观察者
  • 原文地址:https://www.cnblogs.com/gavinsp/p/4568413.html
Copyright © 2011-2022 走看看