随笔分类 -  字符串-后缀数组

摘要:题意 在一个数组中,求所有本质不同子段的贡献和。 每个子段的贡献为该子段中的最大值。 $n \leq 2e5 , T \leq 1000$ "传送门" 思路 首先子段的贡献是子段中最大值,所以不难转化为求每个最大值对答案的贡献: 设 $nxt[i]$ 代表 $min\{j|i a[i] \}$ , 阅读全文
posted @ 2019-10-11 17:20 Acerkoo 阅读(352) 评论(0) 推荐(1)
摘要:题意 给定一个长度为 $n$ 的字符串,有 $q$ 次询问,每次询问求字符串的 $[l, r]$ 所形成的子串第 $k$ 次出现时的位置。 "传送门" 思路 $[l, r]$ 形成的子串,它是一些后缀的前缀,并且这些前缀在后缀数组中的rk是相邻的,因此,对于$[l, r]$ 我们可以通过 rmq/l 阅读全文
posted @ 2019-08-25 22:26 Acerkoo 阅读(162) 评论(0) 推荐(0)
摘要:题意 后缀数组板子题 "传送门" Code cpp include using namespace std; const int maxn = 1e6+10; int n; char str[maxn]; struct SuffixArray { int x[maxn], y[maxn], c[ma 阅读全文
posted @ 2019-08-24 22:24 Acerkoo 阅读(125) 评论(0) 推荐(0)