RMQ
龑钧
Pursue Victories
展开
-
YBTOJ H. 4.超级钢琴
做开头,再找i+l-1~i+r-1的前缀和最大值(用RMQ解决),再将这些值压入堆中(思路:对于一个和弦的值,很容易想到用前缀和化,而我们要做的就是对于每一个位置。原创 2022-08-22 22:45:37 · 108 阅读 · 0 评论 -
YBTOJ C. 【例题3】与众不同
思路:首先应该想到dp,我们约定pre[i] 为i号位为结尾的数的起始位置,f[i]为i号位为结尾的最长序列长度,不难得到 pre[i]=max(pre[i-1],last[a[i]]+1) f[i]=i-pre[i]+1。因为上面的式子可以得到pre[i] 为一个单调不降序列,于是我们可以用二分来寻找分界点,那么第二种序列长度就为pos-l+1,下面就是处理第一种答案了,这里运用。对于一个访问区间有两种序列长度:1.整个序列被包含在区间内 2.整个序列被不完全包含在区间内。算法来加速区间最大值查询。原创 2022-08-20 20:25:35 · 191 阅读 · 0 评论