lyndon 分解

lyndon 串(简单串):最小后缀是本身的串

lyndon 分解:原串拆分成若干个 lyndon 串 \(s_1,s_2\cdots\),满足 \(s_1\ge s_2\ge \cdots\),一个确定串的 lyndon 分解唯一。

  • Duval 算法:线性处理 lyndon 分解,思路是找循环串,遇到不匹配两种情况处理,并不难理解。

lyndon 分解与最小表示法:倍长原字符串,找到跨过 \(n\) 的一个 lyndon 串,其起点就是最小表示法的起点。

  • 最小表示法为自己与最小后缀是自己是等价的。

Lyndon 分解

最小表示法

每个前缀的最小后缀:在 Duval 的基础上记录一下每个位置 \(j\) 的最小后缀开头 \(f_j\),循环串满足 \(j-f_j=k-f_k\)

Minimum Index

大毒瘤题。

题意非常清新,但是过几秒就发现屁思路没有,瞄了一眼题解大分讨。

累了,摸了(

posted @ 2021-08-30 16:53  zjjws  阅读(55)  评论(0)    收藏  举报