博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ---2406 Power Strings[求最长重复字串]
阅读量:4928 次
发布时间:2019-06-11

本文共 1293 字,大约阅读时间需要 4 分钟。

Power Strings
Time Limit: 3000MS   Memory Limit: 65536K
Total Submissions: 23735   Accepted: 9978

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

abcdaaaaababab.

Sample Output

143

Hint

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

Source

 
 
 
题意:给出一个字符串S,求该字符串最多是由相同重复字串连接而成的
若S由n个A组成,则称 S = A^n,求最大的n
  如 S=aaa,S="a"^3 => n = 3;      S=ababa =>  n = 1       S=ababab=>"ab"^3=>n=3
 
code:
1 #include
2 #include
3 using namespace std; 4 5 int Next[1000010]; 6 char str[1000010]; 7 int len; 8 9 void getnext()10 {11 int j=0;12 int k=-1;13 Next[0]=-1;14 while(j

 

转载于:https://www.cnblogs.com/XBWer/archive/2012/09/04/2669823.html

你可能感兴趣的文章
关于win7 下双击不能打开jar 文件
查看>>
学习进度(2016.5.29)
查看>>
Visual studio 创建项目失败vstemplate
查看>>
keras 上添加 roc auc指标
查看>>
Linux命令(二)关机重启
查看>>
[OpeCV] highgui头文件
查看>>
C# 获取远程图片
查看>>
Android——MaterialDesign之一Toolbar
查看>>
filebeat output redis 报错 i/o timeout
查看>>
Java-ArrayList
查看>>
Java获取新浪微博cookies
查看>>
面试题总结
查看>>
【BZOJ1095】捉迷藏(动态点分治)
查看>>
Table Basics [转载]
查看>>
Logback 学习笔记
查看>>
并查集
查看>>
11、组件注册-使用FactoryBean注册组件
查看>>
nyoj_95_众数问题_map练习
查看>>
uchome 是如何将数据插入数据库的
查看>>
For循环
查看>>