题目: 583. Delete Operation for Two Strings Medium 61517FavoriteShare 583. Delete Operation for Two Strings Medium 61517FavoriteShare Medium Given two w ...
分类:
其他好文 时间:
2019-02-12 12:52:24
阅读次数:
166
LCS是Longest Common Subsequence的缩写,即最长公共子序列。一个序列,如果是两个或多个已知序列的子序列,且是所有子序列中最长的,则为最长公共子序列。(摘自百度百科) 一.DP通法 给定串1和串2,求其LCS 譬如给定2个序列: 求其最长的公共子序列。 显然长度是3,包含3 ...
分类:
其他好文 时间:
2019-02-09 01:00:28
阅读次数:
183
#!一个序列S任意删除若干个字符得到的新序列T,则T叫做S的子序列 注意,这个和最长公共字串不一样,最长公共子串要求连续。 1.算法公式: 这里只是返回最大长度,如果求最大子序列,还需要进行回溯。 ...
分类:
编程语言 时间:
2019-01-30 15:48:47
阅读次数:
210
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2119 就是找差分序列上中间差 m 的相等的两段。 考虑枚举这样一段的长度 L 。可以把序列分成 \( \frac{n}{L} \) 段;令 L , 2L , ... 这样的位置为关键点,那么每 ...
分类:
编程语言 时间:
2019-01-28 14:03:09
阅读次数:
167
最长公共子串 lcs.cpp/.in/.out 计算两个字符串的最大公共子串(Longest Common Substring)的长度,字符不区分大小写,这里的最大公共子串要求的字串是连续的。 输入: 两行,每行一个字符串,字符串长度<=1000. 输出: 输出一个整数,表示公共子串的长度。 样例输 ...
分类:
其他好文 时间:
2019-01-25 19:21:19
阅读次数:
182
"传送门" 求两个字符串最长公共子串的长度。 对于第一个串S,建立SAM,之后对于第二个串T,我们在上面和S进行匹配。首先从$t_0$开始,如果能成功匹配的话,那么我们让长度+1,同时更新答案。如果失配,那我们就跳parent树转移到其父节点的位置,并且把当前匹配长度变为其最长后缀长度即可。 最后统 ...
分类:
其他好文 时间:
2019-01-12 22:49:17
阅读次数:
222
description "luogu" 给一个小写字母字符串$S$,$q$次询问每次给出$l,r$,求$s[l..r]$的$Border$。 solution 我们考虑转化题面:给定$l,r$,求满足$lcs(i,r)\ge i l+1$的最大的$i$。 对于$lcs(i,r)$,考虑对$S$构建$ ...
分类:
其他好文 时间:
2019-01-12 19:56:43
阅读次数:
193
$\color{ 0066ff}{ 题目描述 }$ 输入2 个长度不大于250000的字符串,输出这2 个字符串的最长公共子串。如果没有公共子串则输出0 。 $\color{ 0066ff}{输入格式}$ 两个字符串 $\color{ 0066ff}{输出格式}$ 一个整数,为 所求答案 $\col ...
分类:
其他好文 时间:
2019-01-10 19:30:34
阅读次数:
153
$SAM$上匹配 我们就是需要找到两个串的最长公共子串 先对其中一个串建出$SAM$,之后我们把另一个串放到上面跑 如果当前在$SAM$的状态是$now$,下一个字符是$c$,匹配出的的长度为$L$ 如果$now$有$c$这个转移,我们就转移过去,$L$++ 如果没有我们就跳$link$,知道跳到有 ...
分类:
其他好文 时间:
2019-01-03 22:41:36
阅读次数:
179
注:博客的不少思想是从算法竞赛进阶指南上选取的。 线性动态规划是指具有“阶段”划分的动态规划算法。动态规划算法的状态包括多个维度,但在每个维度上都具有“线性”变化的阶段,那么也可以叫作线性动态规划。 首先还是说几个固有的模型。 lis问题:算法竞赛进阶指南给出的表示是这样。 状态表示:f[i]表示以 ...
分类:
其他好文 时间:
2018-12-31 13:48:55
阅读次数:
261