分析:
听说是莫队裸题,很显然,我并不喜欢莫队。
我们可以考虑将询问离线,以右端点排序,之后从1枚举到n,依次树状数组中修改i和last[i],之后当i==询问的右节点时,find一下答案就可以了。
附上代码:
#include#include #include #include #include #include #include using namespace std;#define N 50005#define M 1000005int n,m,a[N],last[M];struct node{ int l,r,ans,idx;}q[N<<2];bool cmp(const node &c,const node &b){return c.r