
rmq
文章平均质量分 73
CCloth
这个作者很懒,什么都没留下…
展开
-
[单调栈][st表]Max GEQ Sum Codeforces1691D
找到区间了就该判断这些区间是否满足题意了,在单调栈找到的范围内最大值不变,永远都是a[i],所以可以求一下区间和的最大值,因为区间和能够用前缀和差值来表示,区间和最大也就是最大的前缀和减最小的前缀和,不过这个区间和必须包含i这个位置,所以最大的前缀和要在[i, r[i]-1]中找,最小的前缀和要在[l[i], i-1]中找,因为是不带修改的区间最值查询,直接用st表会更方便。最后要注意用st表的时候f[0]也要进行更新,因为下面在求最小值的时候用到了f[0]的信息。原创 2023-01-03 21:36:36 · 403 阅读 · 0 评论 -
[st表][贪心]Loop 2022杭电多校第6场 1012
给出长度为n的数组以及k次操作机会,每次操作可以选择一个区间[l, r]使区间内的点循环左移1位,问最终字典序最大的序列是什么。原创 2022-08-04 21:37:15 · 222 阅读 · 0 评论 -
[双指针][st表]King of Range 2021牛客多校第5场 K
Given nn_{}n integers a1,a2,⋯ ,ana_1,a_2,\cdots,a_na1,a2,⋯,an and mm_{}m queries. For each query, you are given a const kk_{}k and you should determine how many different pairs (l,r)(l,r)_{}(l,r) are there meeting the condition that the range of the原创 2022-07-14 11:47:16 · 194 阅读 · 0 评论 -
[究极好题][rmq][后缀数组]Maximum repetition substring POJ3693
The repetition number of a string is defined as the maximum numberRsuch that the string can be partitioned intoRsame consecutive substrings. For example, the repetition number of "ababab" is 3 and "ababa" is 1.Given a string containing lowercase lett...原创 2021-10-22 16:33:23 · 137 阅读 · 0 评论 -
st表总结
长度为n的数组,m次询问区间最值,可能都会想到用线段树,然而线段树每次查询复杂度为O(logn),且代码十分冗长,如果查询次数m较大可能就会超时。现在介绍一种短小精悍的数据结构——st表。它的复杂度较低,预处理复杂度为O(nlogn),查询复杂度为O(1),在很多次询问的情况下相当好用。st表需要维护一个二维数组f[i][j],表示从第i位开始2^j长度的区间内最值,当我们有了这个数组后就可以O(1)地查询了。现在考虑如果得到这个数组,首先可以发现长度为2^j的区间可以均分为两个长度为2^(j-1)的区原创 2021-10-22 10:22:41 · 238 阅读 · 0 评论