您好、欢迎来到现金彩票网!
当前位置:老k棋牌 > 栈自动机 >

BZOJ_3879_SvT_后缀数组+单调栈

发布时间:2019-06-19 23:37 来源:未知 编辑:admin

  现在有若干组询问,对于每一个询问,我们给出若干个后缀(以其在S中出现的起始位置来表示),求这些后缀两两之间的LCP(LongestCommonPrefix)的长度之和.一对后缀之间的LCP长度仅统计一遍.

  首先是一个整数t,表示共有多少个后缀.接下来t个整数分别表示t个后缀在字符串S中的出现位置.

  先求出height数组,然后建立ST,设g[i]表示给出的第i个后缀到第i+1个后缀的LCP长度。

  dp[i]表示以第i个位置为结尾的所有区间最小值之和,对于i左边第一个大于等于g[i]的g[j],有f[i]=f[j]+(i-j)*g[i],答案就是dp[i]之和。

http://advntravel.com/zhanzidongji/38.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有