E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
KMP+扩展KMP
HDU 3068 最长回文(manacher算法:回文字串)
pid=3068题意:给你一个串,求这个串中的最长回文字串的长度.分析: 利用
扩展KMP
算法可以很轻松的求出原始串的后缀回文字串长.详解请见HDU3613解题报告:http://blog.csdn.net
u013480600
·
2014-04-07 01:00
ACM
HDU 3613 Best Reward(
扩展KMP
:回文判断)
HDU3613BestReward(
扩展KMP
:回文判断)http://acm.hdu.edu.cn/showproblem.php?
u013480600
·
2014-04-06 20:00
ACM
HDU 4333 Revolving Digits(KMP:循环节+
扩展KMP
)
HDU4333RevolvingDigits(KMP:循环节+
扩展KMP
)http://acm.hdu.edu.cn/showproblem.php?
u013480600
·
2014-04-06 18:00
ACM
HDU 4300 Clairewd’s message(
扩展KMP
)
HDU4300Clairewd’smessage(
扩展KMP
)http://acm.hdu.edu.cn/showproblem.php?
u013480600
·
2014-04-06 16:00
ACM
一些
扩展kmp
的总结
花了一天多时间学了下ex_kmp。。。。可以看刘雅琼的ppt,讲的非常清楚:下载地址:http://url.cn/Rvjxa9ex_kmp可以在线性时间内求文本串的每个位置与模板串的最大公共前缀 ,写法和普通kmp差不多。。我的写法是:next[i]:P[i..m-1]与P[0..m-1]的最长公共前缀ex[i]:T[i..n-1]与P[0..m-1]的最长公共前缀 我的小模板:https://g
u012797220
·
2014-04-01 17:00
HDOJ 4763 Theme Section
扩展kmp
找前缀长。。。
u012797220
·
2014-04-01 00:00
HDOJ 4333 Revolving Digits
扩展KMP
,因为是求不同的串,所以相等的串只会出现1次,出现第二次的时候就说明有循环了RevolvingDigitsTimeLimit:3000/1000MS(Java/Others) MemoryLimit
u012797220
·
2014-03-31 11:00
Marlon's String zoj3587
problemId=4629后缀数组或
扩展kmp
SA做法#include #include #include #include #include #include #include #include #
gyarenas
·
2014-01-09 21:00
扩展kmp
出自http://www.cppblog.com/MatoNo1/archive/2011/04/17/144390.aspx
扩展KMP
:给出模板串A和子串B,长度分别为lenA和lenB,要求在线性时间内
KIDGIN7439
·
2013-11-16 23:00
扩展KMP
算法实现
对于字符串S和T,n=|S|,m=|T|。要求S(i,n)与T的最长公共前缀长度(i=1,2...n)。 用B[i]表示该长度,那么S(i,n)与T的最长公共前缀即S(i,i+B[i]-1)。 暴力枚举所用时间为O(nm),慢的原因是计算了很多冗余情况。如: S=AAAAAAAAB,T=AAAAAAAAC 那么,第一次比较了9位。 第二次比较了8位。
gaotong2055
·
2013-10-24 11:00
poj 3450 Corporate Identity (
KMP+
最长公共子串)
题目链接:poj3450题目大意:给定n个字符串,找出最长的公共子串,若长度小于3输出IDENTITYLOST解题思路:选出长度最短的字符串,枚举它的子串把它的子串分别与其余的n-1个字符串匹配字符串长度越短它的子串就越少,枚举量越少枚举子串的顺序从大到小,能够匹配就退出输出答案如果从小到大枚举则需要枚举所有符合情况的子串,耗费时间代码://Final找最长的公共子串,注意lessthan3,是小
MyZee
·
2013-10-23 12:39
poj
KMP
poj 3376 Finding Palindromes(
扩展kmp
+trie)
poj3376FindingPalindromes(
扩展kmp
+trie)分类: 字符串2013-10-0918:11 89人阅读 评论(0) 收藏 举报
扩展kmp
poj3376FindingPalindromes
pi9nc
·
2013-10-09 21:00
字符串
poj 3376 Finding Palindromes(
扩展kmp
+trie)
poj3376FindingPalindromes(
扩展kmp
+trie)题意:给出n个字符串,问这n个字符串两两链接(一共有n^2中连接方法),组成的所有的字符串中,有多少个回文串。好题!!!
No__stop
·
2013-10-09 18:00
扩展kmp
hdu 3068 最长回文(manacher)
题解:刚看到这题,以为用
扩展kmp
就可以解决,
扩展kmp
的时间复杂度是O(n*logn),对于此题,n最大为11W,但是测试用例有120组。
ljd4305
·
2013-10-08 11:00
重叠的最长子串 (
扩展KMP
算法)(滚动哈希算法--Rabin-Karp算法)
【九度0J】题目1535:重叠的最长子串(
扩展KMP
算法)(滚动哈希算法--Rabin-Karp算法)分类:挑战程序设计竞赛---读书笔记Algorithm-字符串枚举2013-10-0615:52115
pi9nc
·
2013-10-07 10:53
算法
【九度0J】 题目1535:重叠的最长子串 (
扩展KMP
算法)(滚动哈希算法--Rabin-Karp算法)
样例输入:abcdecdefg样例输出:3思路:
扩展KMP
,用extend[i]保存主串S[i
xiaozhuaixifu
·
2013-10-06 15:00
字符串匹配
前后缀匹配
hdu 4763 Theme Section (
扩展kmp
)
hdu4763ThemeSection(
扩展kmp
)题目大意:给出一个字符串,问这个字符串的最长ThemeSection是多长,ThemeSection要符合以下条件,必须出现在字符串的开头,结尾,和中间
No__stop
·
2013-09-28 21:00
扩展kmp
hdu3613(
扩展KMP
)
BestRewardTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/65536K(Java/Others)TotalSubmission(s):417 AcceptedSubmission(s):169ProblemDescriptionAfteranuphillbattle,GeneralLiwonagreatvictory.
xj2419174554
·
2013-08-25 19:00
数据结构
KMP
manacher算法
hdu3080(
KMP+
枚举)
BlueJeansTimeLimit:1000MS MemoryLimit:65536KTotalSubmissions:10119 Accepted:4280DescriptionTheGenographicProjectisaresearchpartnershipbetweenIBMandTheNationalGeographicSocietythatisanalyzingDNAfromhun
xj2419174554
·
2013-08-17 00:00
数据结构
动态规划
KMP
hdu2328(
KMP+
枚举)
CorporateIdentityTimeLimit:9000/3000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):186 AcceptedSubmission(s):89ProblemDescriptionBesideotherservices,ACMhelpscompaniestoc
xj2419174554
·
2013-08-17 00:00
数据结构
动态规划
KMP
hdu1358(
KMP+
最小循环节)
PeriodTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):2049 AcceptedSubmission(s):1010ProblemDescriptionForeachprefixofagivenstringSwithNcharacters(each
xj2419174554
·
2013-08-16 19:00
数据结构
字符串
KMP
HDU 3613Best Reward(
扩展KMP
解法)
BestRewardTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/65536K(Java/Others)TotalSubmission(s):406 AcceptedSubmission(s):167ProblemDescriptionAfteranuphillbattle,GeneralLiwonagreatvictory.
opm777
·
2013-08-15 22:00
EKMP
hdu 4333
扩展kmp
RevolvingDigitsTimeLimit:3000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):1165 AcceptedSubmission(s):351ProblemDescriptionOnedaySilenceisinterestedinrevolvingthed
u010422038
·
2013-08-10 22:00
hdu4333 Revolving Digits(
扩展kmp
)
Revolving Digits Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 1143 Accepted Submission(s)
·
2013-08-09 22:00
git
HDU 4333 Revolving Digits2012多校联赛第四场C题(
扩展KMP
+KMP)
RevolvingDigitsTimeLimit:3000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):1140 AcceptedSubmission(s):332ProblemDescriptionOnedaySilenceisinterestedinrevolvingthed
opm777
·
2013-08-09 10:00
KMP
HDU
扩展kmp
多校联赛
POJ 3450 Corporate Identity (
KMP+
暴搞)
题意:给定N个字符串,寻找最长的公共字串,如果长度相同,则输出字典序最小的那个。找其中一个字符串,枚举它的所有的字串,然后,逐个kmp比较.......相当暴力,可二分优化。#include #include #include #include #include #include usingnamespacestd; charstr[4111][221]; intnext[222]; voidg
paradiserparadiser
·
2013-07-27 14:00
hdu4618(
KMP+
动态规划)
PalindromeSub-ArrayTimeLimit:3000/1000MS(Java/Others) MemoryLimit:65535/32768K(Java/Others)TotalSubmission(s):317 AcceptedSubmission(s):166ProblemDescriptionApalindromesequenceisasequencewhichis
xj2419174554
·
2013-07-26 15:00
模拟
hdu-4468-Spy-KMP+贪心
+s的前缀n+s=r.解题思路:
KMP+
贪心。
cc_again
·
2013-07-23 15:00
KMP
贪心
hdu4333之
扩展KMP
RevolvingDigitsTimeLimit:3000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):1105 AcceptedSubmission(s):318ProblemDescriptionOnedaySilenceisinterestedinrevolvingthed
xingyeyongheng
·
2013-07-19 22:00
hdu3613之
扩展KMP
BestRewardTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/65536K(Java/Others)TotalSubmission(s):364 AcceptedSubmission(s):144ProblemDescriptionAfteranuphillbattle,GeneralLiwonagreatvictory.
xingyeyongheng
·
2013-07-19 22:00
hdu 4468
KMP+
贪心
题意,给定一个字符串S,用另一个字符串T, 以 T的前缀1+T的前缀2+……+T 的形式来得到S,求T的最小长度。集训队比赛的时候,我们想到的是枚举后缀,然后匹配,因为这样保证了后缀一定满足,但这样的话,长度必须一个个向上加,而且每次都要遍历一遍字符串,果断TLE了。看了题解才知道,枚举前缀加上贪心的思想可以更快,而且做倒O(n)的复杂度。首先我们把模式串p定为s[0],然后进行匹配,当匹配过程中
t1019256391
·
2013-07-09 18:00
BZOJ 1009([HNOI2008]GT考试-
KMP+
矩阵加速Dp)
1009:[HNOI2008]GT考试TimeLimit: 1Sec MemoryLimit: 162MBSubmit: 1067 Solved: 642[Submit][Status][Discuss]Description阿申准备报名参加GT考试,准考证号为N位数X1X2....Xn(0 #include #include #include #include #include #inclu
nike0good
·
2013-06-13 12:00
扩展kmp
模板
对于
扩展kmp
,现在还没有进行实用,所以先将模板打好基础,理解清楚每一步,这样日后应用就轻松点了。
ljd4305
·
2013-05-24 23:00
hdu 4300 Clairewd’s message(
扩展KMP
)
Clairewd’smessageTimeLimit:2000/1000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):2305 AcceptedSubmission(s):905ProblemDescriptionClairewdisamemberofFBI.Afterseveralyea
nealgavin
·
2013-05-22 20:00
扩展KMP
模板
#include #include #include usingnamespacestd; constintMM=100005; intnext[MM],extand[MM]; charS[MM],T[MM]; voidGetNext(constchar*T){ intlen=strlen(T),a=0; next[0]=len; while(a=p){ intj=(p-k+1)>0?(p-k+1
cyendra
·
2013-05-22 08:00
KMP
MUTC 1 A - Clairewd’s message
扩展KMP
Clairewd’smessageTimeLimit:2000/1000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):2296 AcceptedSubmission(s):901ProblemDescriptionClairewdisamemberofFBI.Afterseveralyea
cyendra
·
2013-05-22 08:00
字符串
HDU 3374 String Problem
分析:
KMP+
最小最大表示。如果这个字符串有循环节且循环节长度为T,那么字符串每循环左移T个字符得到的字符串和原串就相同。因此可以用KMP的next[]数组求出循环
HRHACMER
·
2013-05-10 11:00
hdu 3068 最长回文 (manacher算法)
朴素算法是依次以每一个字符为中心向两侧进行扩展,显然这个复杂度是O(N^2)的,关于字符串的题目常用的算法有KMP、后缀数组、AC自动机,这道题目利用
扩展KMP
可以解答
H_R_D_127
·
2013-04-30 10:00
HDU 3068 最长回文串
题目大意:如题思路:manacher算法,第一次没听懂..这次终于弄懂了..跟
扩展KMP
很像....先把在博客上看到的思想贴出来:其实原文说得是比较清楚的,只是英文的,我这里写一份中文的吧。
kg_second
·
2013-04-28 21:00
poj2185
KMP+
欧几里得 求最小的覆盖
题意:给一个n*m的大小的矩形,里面存一些字母,让你找出最小的串能够覆盖这个矩形。例如:aaaa 能让一个a完全覆盖。ababaababa能让ab覆盖。思路:我们先求解每行的最小覆盖C,然后再求每列的覆盖R,然后最小的覆盖就是C*R。 #include #include charstr[10005][80]; intnext[10005]; intn,m; intgcd(intx,in
wahaha1_
·
2013-04-26 11:00
hdu 3068(
扩展KMP
)
//http://bbs.dlut.edu.cn/bbstcon.php?board=Competition&gid=23474一个奇妙的o(n)算法,明天看看~~看完结果总结如下: 算法大致过程是这样。先在每两个相邻字符中间插入一个分隔符,当然这个分隔符要在原串中没有出现过。一般可以用‘#’分隔。这样就非常巧妙的将奇数长度回文串与偶数长度回文串统一起来考虑了(见下面的一个例子,回文串长度全为奇
SprintfWater
·
2013-03-22 22:00
回文子串对(
扩展kmp
-kmp与回文子串)
Problem1回文子串对(manacher.cpp/c/pas)【题目描述】给定一长度为n的小写字母串,求有多少对回文子串,它们的交集非空。一对回文子串的交集非空:[a,b]、[c,d](a≠c或b≠d)为2个回文子串,且[a,b]∩[c,d]≠∅。【输入格式】第一行一个整数n表示串长。第二行长度为n的小写字母串。【输出格式】输出一个整数表示答案,答案对1000000007取模。【样例输入】4b
nike0good
·
2013-03-16 15:00
POJ 3080 查找公共最长子串
kmp+
枚举
找出所有串的最长公共子串,我枚举第一个串的每一个子串,然后使用kmp在剩余子串中查找,看是否存在。这里使用了一个减枝,如果枚举的串的长度j-i+1小于已经得出的串,则直接跳过。//11347502c00h00g3080Accepted384K16MSG++2503B2013-03-1411:54:08 #include #include #include intn,m; charstr[12][
chen895281773
·
2013-03-14 11:00
HDOJ 4333 Revolving Digits(
KMP+
扩展KMP
)
用
扩展KMP
进行匹配,母串为输入串的两倍扩展(便于表示循环位移),在匹配的过程中判断大小。代码如下:#include #include usingnamespacestd; typed
michaelalan
·
2013-03-04 22:00
HDOJ 4300 Clairewd's message(
扩展KMP
)
利用
扩展KMP
将该串所有后
michaelalan
·
2013-03-04 20:00
poj3080(串-
KMP+
枚举)
题意:有2到10个case,每个case里有n个长度都为60的串,求出它们的最长公共子串,如果这个子串的长度 #include #include #define MAXSIZE 60 //输入比较的字符串长度 using namespace std; void get_nextval(string T,int *nextval) { i
ps18forever
·
2013-03-01 09:11
ACM题库
POJ 1226 Substrings(
KMP+
枚举)
超级传送门:http://poj.org/problem?id=1226题意要求一个最长的串X,其或其反转串rev(X)在所有串中均出现过,输出X的长度。思路:先枚举第一个字符串的所有字串和字串的反转串,与剩下字符串进行串匹配,匹配过程中若二者有一个匹配成功则视为成功,从最长的字串开始枚举,第一个成功匹配的字串即为答案。代码(注意reverse函数调用的位置,我之前多调用了一次导致WA):#inc
michaelalan
·
2013-02-23 20:00
String (
扩展KMP
)#by nobody
题目:http://acm.hust.edu.cn:8080/judge/contest/view.action?cid=18730#problem/BKMP:给出两个字符串A(称为模板串)和B(称为子串),长度分别为lenA和lenB,要求在线性时间内,对于每个A[i](0 #include #include #include #include usingnamespacestd; consti
XDU_Truth
·
2013-02-01 21:00
Manacher算法
求最长回文子串可以用后缀数组,
扩展KMP
算法,Manacher算法,其中Manacher算法无论时间还是编程复杂度都是最好的,其时间复杂度为O(n)#include #include #include
ACdreamers
·
2013-01-22 19:00
扩展KMP
算法
扩展KMP
的应用: 给出模板串S和串T,长度分别为Slen和Tlen,要求在线性时间内,对于每个S[i](0=len,就说明与原来的相等了,否则如果S[i+extend[i]] #include #
ACdreamers
·
2012-12-18 13:00
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他