随笔分类 -  字符串

摘要:后缀数组求 LCP 和相关证明 一些定义 \(\text{SA}(i)\) 排名为 \(i\) 的后缀左端点;\(\text{rank}(i)\) 左端点为 \(i\) 的后缀排名;\(\text{suf}(i)\) 左端点为 \(i\) 的后缀; \(\text{lcp}(S,T)\),串 \(S 阅读全文
posted @ 2024-11-01 15:56 maniubi 阅读(6) 评论(0) 推荐(0) 编辑
摘要:倍增求后缀数组 1. 一些定义 后缀 \(i\):子串 \([\text{len}(S)-i+1,\text{len}(S)]\); \(\text{SA}(i)\):排名为 \(i\) 的后缀; \(\text{rank}(i)\):后缀 \(i\) 的排名,\(\forall i>n,\text 阅读全文
posted @ 2024-10-31 21:22 maniubi 阅读(23) 评论(0) 推荐(0) 编辑
摘要:字符串大师 题意 一个串 \(T\) 是 \(S\) 的循环节,当且仅当存在正整数 \(k\),使得 \(S\) 是 \(T^k\) (\(T\) 重复 \(k\) 次)的前缀。 给出字符串 \(S\) 每个前缀的最短循环节,求出字典序最小的 \(S\)。 思路 记字符串 \(S\) 的最短循环节为 阅读全文
posted @ 2024-10-31 11:44 maniubi 阅读(5) 评论(0) 推荐(0) 编辑
摘要:区间推平,区间查询循环节 题意 给定一个字符串 \(s\) , 请你支持两种操作: \(1, l, r, c\):将 \([l,r]\) 之间的字符改为 \(c\)。 \(2, l, r, d\):询问 \([l,r]\) 之间是否有长度为 \(d\) 的循环节,有输出 YES,否则输出 NO。 思 阅读全文
posted @ 2024-10-30 19:13 maniubi 阅读(2) 评论(0) 推荐(0) 编辑