随笔分类 -  字符串-kmp

摘要:C. Distinct Substrings 大意: 给定串$s$, 字符集$m$, 对于每个字符$c$, 求$s$末尾添加字符$c$后本质不同子串增加多少. exkmp求出每个前缀与后缀匹配的最大长度, 统计一下贡献即可 #include <iostream> #include <sstream> 阅读全文
posted @ 2019-10-15 12:43 uid001
摘要:给定一个串$s$, $Z$算法可以$O(n)$时间求出一个$z$数组 $z_i$表示$s[i...n]$与$s$的前缀匹配的最长长度, 下标从$0$开始 阅读全文
posted @ 2019-09-18 20:44 uid001
摘要:大意: 给定字符串$C$, 只含小写字母和'*', '*'表示可以替换为任意小写字母, 再给定字符串$S,T$, 求$S$在$C$中出现次数-$T$在$C$中出现次数最大值. 设$dp[i][j][k]$表示$C$的前$i$位, $S$和$T$分别匹配到第$j$位和第$k$位的最优解 可以用$kmp 阅读全文
posted @ 2019-05-10 19:55 uid001
摘要:kmp板子如下, 失配数组不优化的话, $f_i$就表示子串[0...i]前后缀最大匹配长度 练习1: hdu5763 大意: 给定字符串T, 模板串P, 可以将T中与P匹配的子串替换为'*', 求多少种替换方案. 一个板子题, kmp求出可以替换的位置, 然后dp就好了 练习2 CF825F 大意 阅读全文
posted @ 2019-03-15 12:07 uid001