不要在意标题
最裸的莫队大家都会吧,我就不多说了
那么这是一篇关于扩展莫队的小总结
带修改莫队
怎么让莫队资瓷修改呢?
在最普通的莫队里,我们记录修改的左右端点l,r。
而修改涉及到先后顺序问题,所以要增加一维t,把修改时间记录下来
询问的排序方式为:左端点所在块作为第一关键字。右端点所在块作为第二关键字。修改时间作为第三关键字
如何实现呢?
先假设块的大小是S,左右指针是L,R
当左右指针不跨块移动时,时间戳是递增的,我们按时间依次处理询问或是修改就好
最多处理O(n)个修改操作。
如果修改的位置\in[L,R],处理修改对答案的影响。
当左右指针跨块移动时,时间戳需要回溯到某个时刻,我们需要还原这些修改。
不跨块移动时,