Lyndon 分解 学习笔记

一个很冷门的字符串算法 Lyndon 串 对于一个字符串,若其本身就是其最小后缀,则称它为 Lyndon 串。 形式化地,对于长度为 $n$ 的字符串 $s$,若满足对于 $i \in [2,n]$,都有 $s < s[i:n]$,则称其为 ...

Z 函数 学习笔记

Z 函数,又称扩展 KMP (exkmp),可以 $\mathcal O(n)$ 求出一个字符串的所有后缀与这个字符串的 LCP 长度。 定义 $z$ 函数 对于字符串 $s$,$z_i$ 定义为 $|\operatorname{LCP}(s, s[i:])|$,即从 $i$ 开始...

CF627F Island Puzzle 题解

CF627F Island Puzzle 题意 给定一棵 $n$ 个点的树,每个点上都有一个 $[0,n-1]$ 的数,任意两点上的数都不同。 每次你可以交换 $0$ 所在的点和与其相连的任一点上的数,同时你可以最多加入一条边。 给定...