首页 > 编程语言 > 详细

后缀数组2

时间:2019-12-24 22:59:07      阅读:79      评论:0      收藏:0      [点我收藏+]

A.外星联络

  $O(n^2)$,随便水

B.跳蚤

  考虑二分答案,二分答案串在原串中的排名。

  考虑如何$check$,从后向前扫每个串,每次在串的前面加入一个字符,如果这个串的字典序>当前串,那么在这个地方断掉。最后检验次数是否小于$k$即可。

  对于比较两个串字典序的问题,直接用后缀数组求$lcp$就可以做到$O(1)$比较。

D.股市的预测

  似乎是个套路?考虑枚举长度$L$,每隔$L$设立一个关键点,计算跨过这个关键点的贡献。手模一下可以发现这东西就是$i$与$i+L+m$的$lcs$和$lcp$之和,用后缀数组求出来ST表$O(1)$询问即可。

E.SvT

  正解貌似是后缀自动机,在$parent$树上建出虚树,然而直接后缀数组,然后单调栈维护一下就好了。

后缀数组2

原文:https://www.cnblogs.com/hzoi-cbx/p/12093683.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!