码迷,mamicode.com
首页 >  
搜索关键字:公共子串    ( 497个结果
POJ 2774 Long Long Message ——后缀数组
【题目分析】 用height数组RMQ的性质去求最长的公共子串。 要求sa[i]和sa[i-1]必须在两个串中,然后取height的MAX。 利用中间的字符来连接两个字符串的思想很巧妙,记得最后还需要空一个位置避免冲突。 【代码】 ...
分类:编程语言   时间:2017-01-03 23:59:30    阅读次数:480
bzoj4032: [HEOI2015]最短不公共子串
Description 在虐各种最长公共子串、子序列的题虐的不耐烦了之后,你决定反其道而行之。 一个串的“子串”指的是它的连续的一段,例如bcd是abcdef的子串,但bde不是。 一个串的“子序列”指的是它的可以不连续的一段,例如bde是abcdef的子串,但bdd不是。 下面,给两个小写字母串A ...
分类:其他好文   时间:2016-12-14 21:13:42    阅读次数:159
字符串的匹配
字符串的匹配 题目描述 相信大家都做许多的字符串匹配问题了,一天,503集训室的俊哥突然想出了新点子。现在给你两个字符串a,b求最长公共子串。对于是字符串匹配大师的你来说,这个再简单不过了。但是,如果现在你有k次修改机会,每次你都可以选择其中某个串的某个位置。将其修改成任意字符。 你需要合理使用这k ...
分类:其他好文   时间:2016-11-28 00:11:26    阅读次数:245
文本比较算法Ⅱ——Needleman/Wunsch算法
在“文本比较算法Ⅰ——LD算法”中介绍了基于编辑距离的文本比较算法——LD算法。 本文介绍基于最长公共子串的文本比较算法——Needleman/Wunsch算法。 还是以实例说明:字符串A=kitten,字符串B=sitting 那他们的最长公共子串为ittn(注:最长公共子串不需要连续出现,但一定 ...
分类:编程语言   时间:2016-11-23 23:01:31    阅读次数:305
POJ 3450 Corporate Identity(KMP)
【题目链接】 http://poj.org/problem?id=3450 【题目大意】 求k个字符串的最长公共子串,如果有多个答案,则输出字典序最小的。 【题解】 我们对第一个串的每一个后缀和其余所有串做kmp,取匹配最小值的最大值就是答案。 【代码】 ...
分类:其他好文   时间:2016-11-16 14:03:46    阅读次数:187
SPOJ 1812 Longest Common Substring II(后缀自动机)
【题目链接】 http://www.spoj.com/problems/LCS2/ 【题目大意】 求n个串的最长公共子串 【题解】 对一个串建立后缀自动机,剩余的串在上面跑,保存匹配每个状态的最小值, 取最小值中的最大值即可。由于跑的地方只记录了匹配结尾的状态, 所以还需要更新parent树上的状态 ...
分类:其他好文   时间:2016-11-16 01:53:26    阅读次数:244
Codeforces 427D Match & Catch(后缀自动机)
【题目链接】 http://codeforces.com/problemset/problem/427/D 【题目大意】 给出一个两个字符串,求出最短且在两个字符串中唯一的公共子串。 【题解】 以原字符串的两倍建立自动机,按字典序在parent树上搜索, 得到的第一个长度为n的字符串就是答案。 【代 ...
分类:其他好文   时间:2016-11-16 01:46:58    阅读次数:205
POJ 2774 Long Long Message(后缀数组)
【题目链接】 http://poj.org/problem?id=2774 【题目大意】 求最长公共子串 【题解】 将两个串中间嵌一个字符相连,求一遍后缀数组 如果排名相邻的两个后缀的开端是分属于两个串的, 那么他们的最长公共前缀就可以用来更新答案 【代码】 ...
分类:编程语言   时间:2016-11-16 01:43:33    阅读次数:147
POJ 3415 Common Substrings(后缀数组+单调栈)
【题目链接】 http://poj.org/problem?id=3415 【题目大意】 求出两个字符串长度大于k的公共子串的数目。 【题解】 首先,很容易想到O(n2)的算法,将A串和B串加拼接符相连, 做一遍后缀数组,把分别属于A和B的所有后缀匹配,LCP-k+1就是对答案的贡献, 但是在这个基 ...
分类:编程语言   时间:2016-11-16 01:31:42    阅读次数:191
POJ 3080 Blue Jeans(后缀数组+二分答案)
【题目链接】 http://poj.org/problem?id=3080 【题目大意】 求k个串的最长公共子串,如果存在多个则输出字典序最小,如果长度小于3则判断查找失败。 【题解】 将所有字符串通过拼接符拼成一个串,做一遍后缀数组,二分答案,对于二分所得值,将h数组大于这个值的相邻元素分为一组, ...
分类:编程语言   时间:2016-11-15 23:33:17    阅读次数:287
497条   上一页 1 ... 20 21 22 23 24 ... 50 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!