数列找不同 && 小Z的袜子(基础莫队模版&&奇偶性优化)
数列找不同
莫队的算法思路:
(1)把m个查询排序:左端点为第一关键字,右端点为第二关键字
(2)维护一个序列(pl,pr),每次根据查询区间(l,r)将pr,pl加一或减一进行修改
由于之前已经对查询进行了排序,因此调整的复杂度很低,接近O(N * sqrt(N))
注意:初始状态pl=1,pr=0,表示区间中没有任何一个数
细节问题都在注释里
上代码
#include<cstdio>
#include<algorithm>
#include<cmath>
using
原创
2021-09-23 14:34:27 ·
182 阅读 ·
0 评论