随笔分类 - Z 函数
摘要:洛谷传送门 一个 \(A\) 合法的充要条件为: \(A\) 为 \(S_{1 \sim i}\) 的一个 border; \(A\) 在 \(S_{1 \sim i}\) 中不重叠地出现 \(\ge k\) 次。 建出失配树后,发现合法的 \(A\) 在树上组成一条某个点 \(u\) 到根的链,且
阅读全文
摘要:洛谷传送门 CF 传送门 思路 首先如果给出的位置合法(即不会有重叠部分不相同的情况),答案为 $26^c$,$c$ 为未填的字符数量。 于是本题的重点是判断是否有重叠部分不相同的情况。不难发现我们只用检验相邻的位置重叠部分是否相同。$i \in [2,n]$,令 $d = a_i - a_{i-1
阅读全文
摘要:洛谷传送门 CF 传送门 思路 题意相当于将 $S$ 表示成 $A^kB$($A^x = A^{x-1}A$,$A^0$ 为空串),其中 $B$ 为 $A$ 的前缀。 考虑枚举 $|A^k|$,设 $|A^k| = len\ (k\ |\ len)$,在 $[1,len]$ 中寻找长度为 $\dfr
阅读全文
摘要:洛谷传送门 CF 传送门 思路 首先求出原串的 $\mathbf{Z}$ 函数数组 $nxt$,那么长度为 $n - i + 1$ 的前后缀满足要求当且仅当 $i + nxt_i - 1 = n$。 显然长度为 $i$ 的前缀的出现次数为满足 $nxt_j \ge i$ 的 $j$ 的个数,差分 +
阅读全文
摘要:洛谷传送门 LOJ 传送门 思路 令 \(|S| = n\)。首先求出 \(S\) 的 \(\mathbf{Z}\) 函数数组 \(nxt\),考虑将 \(AB\) 视作一个整体的循环节,那么长度为 \(i\) 的循环节最多可以接上 \(\left\lfloor\dfrac{nxt_{i+1}}{i
阅读全文

浙公网安备 33010602011771号