摘要: http://www.lydsy.com/JudgeOnline/problem.php?id=1396 (题目链接) 题意 问字符串S每一位的最短识别子串是多长(识别子串指包含这个字符且只出现在S中一次的子串)。 Solution 很简单,搞出后缀数组以后,对于每一个后缀i,都可以求出从i向后延伸 阅读全文
posted @ 2017-01-13 22:23 MashiroSky 阅读(312) 评论(0) 推荐(0) 编辑
摘要: http://www.lydsy.com/JudgeOnline/problem.php?id=3238 (题目链接) 题意 给出一个字符串,求${\sum_{1<=i<j<=n} len(T_i)+len(T_j)-2*lcp(T_i,T_j)}$,其中${T_i}$表示i的后缀 Solution 阅读全文
posted @ 2017-01-13 20:44 MashiroSky 阅读(167) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=3623 (题目链接) 题意 给出一个字符串,每次可以取首或尾接到一个新的字符串后面,求构出的字典序最小的新字符串。 Solution 首先可以发现,一定是优先选择字典序最小的,所以就将字符串反过来接在后面并用分隔符隔开,求一遍后缀数组,然后每次比 阅读全文
posted @ 2017-01-13 19:51 MashiroSky 阅读(268) 评论(0) 推荐(0) 编辑
摘要: http://www.lydsy.com/JudgeOnline/problem.php?id=1031 (题目链接) 题意 给出一个字符串,求它的加密串。 Solution 很显然,将串倍长后求它的后缀数组,然后扫一遍就可以了 细节 数组开两倍 代码 阅读全文
posted @ 2017-01-13 17:22 MashiroSky 阅读(148) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=3294 (题目链接) 题意 给定 n 个字符串,求出现在不小于 k 个字符串中的最长子串。 Solution 后缀数组论文题。。 将 n 个字符串连起来,中间用不相同的且没有出现在字符串中的字符隔开,求后缀数组。然后二分答案,将后缀分成若干组,判 阅读全文
posted @ 2017-01-13 11:26 MashiroSky 阅读(186) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=3415 (题目链接) 题意 给定两个字符串 A 和 B,求长度不小于 k 的公共子串的个数(可以相同)。 Solution 后缀数组论文题。。。 基本思路是计算 A 的所有后缀和 B 的所有后缀之间的最长公共前缀的长度,把最长公共前缀长度不小于 阅读全文
posted @ 2017-01-13 09:37 MashiroSky 阅读(180) 评论(0) 推荐(0) 编辑