
后缀数组
lpf_as_an_oier
这个作者很懒,什么都没留下…
展开
-
bzoj3879
题目http://www.lydsy.com/JudgeOnline/problem.php?id=3879 题目大意就是说给定一个字符串,给定一个序列,要你求序列中两两后缀的最长公共前缀(LCP)的和。 本人较傻,没学过后缀树那高端玩意,正好前段时间刚学了后缀数组,然后就试着写了一下,因为代码不好看,跑得比较慢。 这题我的思路是先求出height和rank,然后把读进来的序列(原创 2016-05-28 15:46:01 · 416 阅读 · 0 评论 -
bzoj3998 后缀数组复习
对于一个给定长度为N的字符串,求它的第K小子串是什么。其中可能有重复和不重复的K小子串。 我只会后缀数组 sa做法 当T=0的询问,我们从sa[i]开始,每次sa[i]这个后缀,我们会加入n-sa[i]+1个子串,其中height[i]个是和sa[i-1]重复的,所以我们记一个变量每次加上n+1-height[i]-sa[i],一旦超过k,则从sa[i]开始长度为k-pre+heig原创 2017-01-04 11:42:48 · 759 阅读 · 0 评论 -
bzoj 4556
Description 佳媛姐姐过生日的时候,她的小伙伴从某东上买了一个生日礼物。生日礼物放在一个神奇的箱子中。箱子外边写了 一个长为n的字符串s,和m个问题。佳媛姐姐必须正确回答这m个问题,才能打开箱子拿到礼物,升职加薪,出任CE O,嫁给高富帅,走上人生巅峰。每个问题均有a,b,c,d四个参数,问你子串s[a..b]的所有子串和s[c..d]的最长公 共前缀的长度的最大值是多少?佳原创 2017-04-07 22:07:27 · 328 阅读 · 0 评论