字符串-KMP
brav0
练习算法两年半的ACM选手
展开
-
失配树
这个border的定义,让人一开始有点懵比,实际上就是S的前缀为i的前缀等于S长度为i的后缀的子串集合。每次询问p前缀跟q前缀的最长公共border,显然这个答案一定是S的一个前缀,我们可以先求出S的next数组即next[i]前i个字符的最长公共前后缀长度,当失配时使得i = next[i], 但是要求p前缀跟q前缀公共border,即当双方不断跳失配指针时遇到的相同点,上面说过,答案一定是S的一个前缀,所以往回跳,跳到的第一个即是最长的,我们可以通过nxt[i] 与 i 为边建...原创 2020-06-06 00:15:25 · 530 阅读 · 0 评论 -
ZZULIOJ 1410: Oulipo(KMP)
题目描述 法语作家Georges Perec (1936–1982) 曾经写过一本没有字母e的书La disparition,他是Oulipo组织的一个成员。从他的书中摘录一段文字如下:Tout avait Pair normal, mais tout s’affirmait faux. Tout avait Fair normal, d’abord, puis surgiss...原创 2019-04-23 14:38:30 · 335 阅读 · 0 评论