"题目链接" $Description$ 求两个字符串最长公共子串 $Solution$ 任何一个子串一定是某个后缀的前缀 可以将两个字符串拼在一起,中间用一个从未出现过的字符隔开,这样ht[]的最大值就是答案? 不一定,最大的ht[]可能是由同一个字符串得到的,判一下属于哪个字符串即可 cpp / ...
分类:
编程语言 时间:
2018-03-14 20:44:11
阅读次数:
213
贪心大法好...裸的贪心过掉后缀数组模板题,后缀数组代码待更... ...
分类:
其他好文 时间:
2018-03-08 20:15:30
阅读次数:
139
后缀数组求至少重复k次的最长字符串,二分分组即可 ...
分类:
编程语言 时间:
2018-03-08 17:16:44
阅读次数:
198
后缀数组是后缀Trie的一个替代品。一个字符串的后缀Trie是把这个字符串所有的后缀给插入到一个Trie中。由于字符串的任意一个子串一定是这个字符串某个后缀的前缀,所以说可以直接在这个Trie里面进行查找就可以找到任意一个字符串是否在这个字符串中,但是最坏情况下这棵Trie的空间复杂度(或者说结点数... ...
分类:
编程语言 时间:
2018-03-06 19:09:09
阅读次数:
188
题目大意 给你一颗trie树,令$s_i$为点$i$到根的路径上的字符组成的字符串。求$max_{u\neq v}(LCP(s_u,s_v)+LCS(s_u,s_v))$ $LCP=$最长公共前缀,$LCS=$最长公共后缀 $1\leq n\leq 200000$,字符集为$\{0\ldots 30 ...
分类:
编程语言 时间:
2018-03-05 19:31:14
阅读次数:
225
http://172.20.6.3/Problem_Show.asp?id=1547 http://www.lydsy.com/JudgeOnline/problem.php?id=4566 似乎后缀自动机是正解,但是后缀数组+并查集也可以乱搞a掉,定义字符串大小的整型变量时候char siz导致r ...
分类:
编程语言 时间:
2018-03-05 12:51:19
阅读次数:
212
题目本来是挺简单的,可惜我的常数太大,用了各种黑科技才A掉 把$A$和$B$拼到一起,中间和最后加一个无穷大的分隔符,求出后缀数组之后根据$rank$贪心取即可 如果不在末尾加分隔符,可以看一看这组数据 32 1 122 1 拼起来后是$[2,1,1,\infty,2,1]$,此时后缀$[2,1]$ ...
分类:
其他好文 时间:
2018-03-04 13:04:25
阅读次数:
159
题面: 传送门 思路: 一道实现起来细节比较恶心的题目 但是其实就是一个裸的树上带修改莫队 好像树上莫队也出不了什么结合题目,不像序列莫队天天结合AC自动机、后缀数组...... 莫队学习请戳这里:莫队 Code: ...
分类:
其他好文 时间:
2018-03-04 11:43:49
阅读次数:
175
题意:给一个数字串,求不可重叠的相似子串,两个子串$a,b$相似的定义是$a_i-b_i$都相等 昨晚二爷讲课,去膜拜一发,学了一下不知道学了多少次也没懂的后缀数组 后缀数组能将字符串$S$的所有后缀$S_{i\cdots n}=\text{Suffix}(i)$排序,$sa_i$表示排第$i$名的 ...
分类:
其他好文 时间:
2018-03-03 19:27:33
阅读次数:
192