
KMP
岛炎
万年太久,正值朝夕
展开
-
KMP模板 + next下标从0和1所代表的含义
对于初学 KMP next数组大同小异,有的时候学的下标1的next数组在做题很困难。其原因还是不熟练,因为两者的本质是一样的。next数组的作用:子串在与主串匹配过程中,当子串的第 j 个位置与主串的第 i 个位置不匹配时,子串前移(子串实际上不移动,所以用到具有向量作用的next数组),使子串的第next[ j ]与主串的第 i 个位置比较。(以下的前缀和后缀指的是真前缀和真后缀)下...原创 2019-01-26 15:53:14 · 3252 阅读 · 1 评论 -
POJ 3080 Blue Jeans(KMP + 暴力)
一开始感觉好难啊,除了暴力枚举我想不到其他办法。然后就去看看别人的思路,发现竟然可以用暴力写!我也没什么好顾虑的,然后就闷着头去写了。枚举样例第一个DNA串的所有长度大于3的子串,然后用这些和除了第一个DNA串KMP匹配即可。遇到长的就替换一下,遇到长度相等的取字典序最小的继续替换…没什么弯。我觉得难点吧,就是枚举所有子串那一部分,那个地方我写的很晕,在加上暴力的代码又那么长,越写越浑。最...原创 2019-01-31 18:27:00 · 157 阅读 · 0 评论 -
UVA11475 - Extend to Palindrome
做了好多的kmp题了(其实不多…也就8,9道…)然后好几个都是没地方想的,我都整理下来了,算了算这是第3个了。这个字符串成环的比较简单,知道思路就很容易写出来了,关键是思路啊…我这脑子就是想不起来,可能仔细想想可能会想起来的。其次什么哈希表啥的,可能会做的快。但是我不会啊!所以,我会的也就是KMP。然后倒置匹配返回结束的位置。我就不细解释了,仔细看代码会看懂的。哦,对了,其中用到了一个函...原创 2019-01-29 18:10:58 · 136 阅读 · 0 评论 -
Codeforces 432D Prefixes and Suffixes
题目链接:http://codeforces.com/problemset/problem/432/D我觉得挺难。emmm…没有觉得不难的。最近在练习kmp,这个题的第一问求前后缀的长度利用next数组我还是会的,关键是求出现的次数。怎么说…我真的不会。然后看大量题解,也是千篇一律。大部分都是dp。由于我也不会dp而且讲解也模棱两可,我就凭借自己说服了自己,然后感觉接受了。其实知道了那个状态...原创 2019-01-29 18:01:41 · 310 阅读 · 0 评论 -
BZOJ 4974 字符串大师
做这个题废了好大的劲啊,想了差不多整整一天…知道自己挺菜的,昨天做完还是不怎么懂,看了别人的题解部分代码也没看懂。然后模仿写的还tlm了。以至于怀疑别人代码的正确性…今天做了个梦不知道为啥就开窍了,然后改了改竟然也ac了。毕竟做了那么长时间的题,所以也想着总结一下。列一下哪里不是很清楚,又怎么解决的。在写一下概念。*1、对于下标为0的next数组,next[ i ] 表示长度为 i 的...原创 2019-01-29 11:47:07 · 195 阅读 · 0 评论