没什么好说的。就是题做累了,来水一篇博客。。。
话说,字符串的题是真的恶心!
A. 基因改造

solution:
特殊匹配条件的KMP
本题和 【bzoj2384】[Ceoi2011]Match 类似。
考虑什么样的两个串是“匹配”的:每个位置数的上一次出现位置与其距离相同。
那么可以把每个位置的权值当作该数上一次出现的位置与其的距离,然后跑KMP即可。
难点:这里需要注意的一点是,在求next数组和匹配时,如果一个位置的上一次出现位置与其距离大于当前串长(这种情况在求next计算后半部分,以及匹配时的母串中出现),那么应当视为该数没有出现过,需要特殊处理。
时间复杂度 O ( n ) O(