zoukankan      html  css  js  c++  java
  • KMP POJ 2406 Power Strings

    题目传送门

     1 /*
     2     题意:一个串有字串重复n次产生,求最大的n
     3     KMP:nex[]的性质应用,感觉对nex加深了理解
     4 */
     5 /************************************************
     6 * Author        :Running_Time
     7 * Created Time  :2015-8-10 10:51:54
     8 * File Name     :POJ_2406.cpp
     9  ************************************************/
    10 
    11 #include <cstdio>
    12 #include <algorithm>
    13 #include <iostream>
    14 #include <sstream>
    15 #include <cstring>
    16 #include <cmath>
    17 #include <string>
    18 #include <vector>
    19 #include <queue>
    20 #include <deque>
    21 #include <stack>
    22 #include <list>
    23 #include <map>
    24 #include <set>
    25 #include <bitset>
    26 #include <cstdlib>
    27 #include <ctime>
    28 using namespace std;
    29 
    30 #define lson l, mid, rt << 1
    31 #define rson mid + 1, r, rt << 1 | 1
    32 typedef long long ll;
    33 const int MAXN = 1e6 + 10;
    34 const int INF = 0x3f3f3f3f;
    35 const int MOD = 1e9 + 7;
    36 char str[MAXN];
    37 int nex[MAXN];
    38 
    39 int get_nex(void)   {
    40     int len = strlen (str);
    41     int i = 0, j = -1;  nex[0] = -1;
    42     while (i < len) {
    43         if (j == -1 || str[j] == str[i])    {
    44             j++;    i++;    nex[i] = j;
    45         }
    46         else    j = nex[j];
    47     }
    48     if (i % (i - nex[i]) == 0)  {
    49         return i / (i - nex[i]);
    50     }
    51     else    return 1;
    52 }
    53 
    54 int main(void)    {     //POJ 2406 Power Strings
    55     while (scanf ("%s", str) == 1)  {
    56         if (str[0] == '.')  break;
    57         printf ("%d
    ", get_nex ());
    58     }
    59 
    60     return 0;
    61 }
    编译人生,运行世界!
  • 相关阅读:
    读取csv文件时编码错误
    ubuntu keras
    ubuntu19.1 tensorflow
    随机数random
    获取文件夹下所有文件名
    np.random.send()
    tensorflow---识别图像特征(吴恩达课程)
    Springboot项目热部署-Devtools
    Hadoop综合大作业
    分布式文件系统HDFS 练习
  • 原文地址:https://www.cnblogs.com/Running-Time/p/4717790.html
Copyright © 2011-2022 走看看