begin lydsy 2731
2731: 最长重复子串
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 6 Solved: 4
[Submit][Status][Web Board]
Description
输入长度为n的串S,求它的最长重复子串。
Input
首先给出字符串长度,其小于等于30000,接下来一个字符串
Output
Sample Input
12
ABBABBCBCCCC
Sample Output
3
HINT
Source
题解:就是最长连续重复子串XX,先假设有两个点相距k(k为题目答案)分别为i,j且i,j分别为第一个X和第二个X中的一个点,
那么就会有一个R和L,R+L=k-1 && for z=1 to r do s[i+z]==s[j+z] && for z=1 to l do s[i-z]==s[j-z](这个自己画画图就可以知道了);
所以枚举k就可以了 详细分析可以看:http://wenku.baidu.com/link?url=RNgJuj25v47IZ37Nc6iqEsqwhARFmXEe2gKRQuOys574byP2ozEJaKq-qMvYlo482P1CoKnLlxz0lLHetYnent78SXzWEGYbF5uNZ14A2pW
#include<iostream>
#include<cstring>
#include<cstdio>
#define maxn 31000
char s[maxn];
int net[maxn];
int fix,ans,n,l,r,j;
using namespace std;
int main()
{
scanf("%d",&n);
scanf("%s",s+);
for (int k=n/; k>=; k--)
{
int i=,j;
while (i+k<=n)
{
j=i+k;
l=;r=;
while (j+r<=n && s[i+r]==s[j+r]) r++;
while (i-l>= && s[i-l]==s[j-l]) l++;
if (r+l->=k)
{
printf("%d\n",k);
return ;
}
i=j;
}
} }
begin lydsy 2731的更多相关文章
- http://begin.lydsy.com/JudgeOnline/problem.php?id=2774(poi病毒)
2774: Poi2000 病毒 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 5 Solved: 4[Submit][Status][Web Boa ...
- http://begin.lydsy.com/JudgeOnline/problem.php?id=2770(PKU2503 Babelfish)
2770: PKU2503 Babelfish Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 2 Solved: 2[Submit][Status][ ...
- Zju1290 Word-Search Wonder(http://begin.lydsy.com/JudgeOnline/problem.php?id=2768)
2768: Zju1290 Word-Search Wonder Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 4 Solved: 2[Submit] ...
- BZOJ(begin) 1328 [Usaco2003 Open]Jumping Cows:贪心【波峰波谷模型】
题目链接:http://begin.lydsy.com/JudgeOnline/problem.php?id=1328 题意: 给你一个长度为n的正整数序列. 可以选任意个数字,只能从左往右选. 偶数 ...
- C++之路进阶——bzoj1821(部落划分)
F.A.Qs Home Discuss ProblemSet Status Ranklist Contest ModifyUser hyxzc Logout 捐赠本站 Notice:1:由于本OJ建 ...
- (最小路径覆盖) News 消息传递 (hust OJ 2604)
http://begin.lydsy.com/JudgeOnline/problem.php?id=2604 Description 总部最近打算向下面的N个工作人员发出了一条秘密消息.因为它是机 ...
- Hash_集合
#include <iostream> #include <cstdio> #include <algorithm> #include <cstring> ...
- [Noi2016十连测第五场]二进制的世界
#include <iostream> #include <cstdio> #include <cstring> #include <cmath> #i ...
- [Poi2000]公共串
#include <iostream> #include <cstdio> #include <cmath> #include <algorithm> ...
随机推荐
- 尝试在数据库 5 中提取逻辑页 (1:1640) 失败。该逻辑页属于分配单元XXX ,而非 XXX。
此信息表明数据库或表 已经部分损坏可以通过以下步骤尝试修复: 1. DBCC CHECKDB 重启服务器后,在没有进行任何操作的情况下,在SQL查询分析器中执行以下SQL进行数据库的修复,修复数据库存 ...
- java删除文件夹 Java中实现复制文件或文件夹
删除文件夹 import java.io.File; public class DeleteDir { /** * @param args */ public static void main(Str ...
- docker私有仓库搭建(ubuntu 14.04和centos7)
最近是在做一个关于docker云化的项目,马上就要开始实战.下午先做了一个私有仓库搭建的实验,先大概做个笔记,有兴趣的蛮看一下吧. 先在所有机子上都安装上docker,我的是两台ubuntu,分别是1 ...
- myeclipse导出javadoc时特殊字符 尖括号
源字符<?xml version="1.0" encoding="UTF-8" standalone="yes"?> javad ...
- Java中关于HashMap的使用和遍历(转)
Java中关于HashMap的使用和遍历 分类: 算法与数据结构2011-10-19 10:53 5345人阅读 评论(0) 收藏 举报 hashmapjavastringobjectiterator ...
- Hadoop远程调用机制
- 转:创建WebTest插件
•Web测试插件为隔离Web测试中各个主声明语句外部的代码提供了一种手段.自定义的Web测试插件为在运行Web测试时调用某些代码提供了途径.在每个测试迭代中,Web测试插件都要运行一次. •通过从We ...
- USACO Section 1.2 Milking Cows 解题报告
题目 题目描述 有3个农夫每天早上五点钟便起床去挤牛奶,现在第一个农夫挤牛奶的时刻为300(五点钟之后的第300个分钟开始),1000的时候结束.第二个农夫从700开始,1200结束.最后一个农夫从1 ...
- 简单三段式状态机实验3-Sequence Detect(序列检测)
1.序列检测器的逻辑功能描述:序列检测指的就是将一个指定的序列从数字码流中识别出来.本例中,我们将设计一个"10010”序列的检测器.设x_in为数字码流输入,z_out为检出标记输出,高电 ...
- Android网络开发之OkHttp--基本用法实例化各个对象
1.实例化OkHttpClient对象,OkHttpClient包含了以下属性,以及set()和get()方法.但并没有包含具体的执行方法,详情见源码. //实例化OkHttpClent对象 priv ...