问题 2711 --mex(mex)

2711: mex(mex)

题目描述

  给定一个长度为n的数列A,数列的第i个元素是$A_i$ (从1开始编号)。你需要回答$q$个询问,每个询问的参数是一个二元组$(l,r) (l≤r)$,表示查询 $mex({A_l,A_{l+1},... ,A_r})$的值。
所谓$mex$,就是$SG$定理中那个函数,也就是"Minimum Exclusive" 的缩写。对一个非负整数组成的集合$S,mex(S)$的值等于最小的不属于集合$S$的非负整数。

输入

输入文件第一行包含2个空格隔开的正整数$n$和$q$,代表序列$A$的长度和询问个数。
输入文件第二行包含$n$个空格隔开的非负整数,第$i$个数表示$A$;的值。
接下来$q$行,每行包含$2$个空格隔开的正整数$l$和$n (1 ≤l≤r≤n)$,表示一个查询的参数。

输出

输出文件应当包含$qn$行,每行一个正整数,表示输入文件中对应询问的答案。

样例输入输出

输入#1 复制
7 5
0 2 1 0 1 3 2
1 3
2 3
1 4
3 6
2 7
输出#1 复制
3
0
3
2
4

提示

【样例解释】
第$1$个询问: $mex({0,2,1})= 3$
第$2$个询问: $mex({2,1})= 0$.
第$3$个询问: $mex({0,2,1,0})=3$.
第$4$个询问: $mex({1,0,1,3})=2$.
第$5$个询问: $mex({2,1,0,1,3,2})=4$ .
【数据规模与约定】
对于$10\%$数据,满足$ n,q≤ 100$。.
对于$30\%$数据,满足$ n,q≤10000$。
对于$50\%$数据,满足$ n,q≤50000$。
对于$100\%$数据,满足$ n,q≤20000; 0≤A;≤20000; A_i$ 均为非负整数:$ 1≤l≤r≤ n; l$和$r$均为正整数:数据有一定梯度。

序号 标题 作者 发表时间 费用 订购数 操作