字典序排序
蓝鲸
这个作者很懒,什么都没留下…
展开
-
《算法竞赛进阶指南》 后缀数组
后缀数组 后缀数组 (SA) 是一种重要的数据结构,通常使用倍增或者DC3算法实现,这超出了我们的讨论范围。 在本题中,我们希望使用快排、Hash与二分实现一个简单的O(nlog2n)的后缀数组求法。 详细地说,给定一个长度为 n 的字符串S(下标 0~n-1),我们可以用整数 k(0≤k<n) 表示字符串S的后缀 S(k~n-1)。 把字符串S的所有后缀按照字典序排列,排名为 i 的后缀记为 SA[i]。 额外地,我们考虑排名为 i 的后缀与排名为 i-1 的后缀,把二者的最长公共前缀的长度记为 .原创 2020-07-27 00:26:42 · 239 阅读 · 0 评论 -
《算法竞赛进阶指南》 雪花雪花雪花
雪花雪花雪花 有N片雪花,每片雪花由六个角组成,每个角都有长度。 第i片雪花六个角的长度从某个角开始顺时针依次记为ai,1,ai,2,…,ai,6。 因为雪花的形状是封闭的环形,所以从任何一个角开始顺时针或逆时针往后记录长度,得到的六元组都代表形状相同的雪花。 例如ai,1,ai,2,…,ai,6和ai,2,ai,3,…,ai,6,ai,1就是形状相同的雪花。 ai,1,ai,2,…,ai,6和ai,6,ai,5,…,ai,1也是形状相同的雪花。 我们称两片雪花形状相同,当且仅当它们各自从某一角开始顺时针或原创 2020-07-18 23:16:07 · 446 阅读 · 0 评论