题意
给你一个序列 ,(2,r,k)代表查询从第1个数到第r个数中>= k且在这个序列中不存的数字。(1,pos)代表修改a[pos]。
思路
这个题强制在线,比赛时想用带修改莫队,发现在线后放弃了。其实这个题是查询某一段序列中大于某个数字的一个算法,我们就想应该联想到权值线段树,但是每个节点存的是这段区间中的最大下标,这样题目就转换成为了求下标大于r且这个值>= k的最小权值。初始化我们应该把每个区间的下标都最大化(比如说一开始就询问整段区间的情况)。修改操作的话我们就把那段区间的存的最大下标最大化,就代表这个区间本身的值已经不在这段区间内了。
1 |
|