#61064. MEX

    ID: 61064 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>计蒜客赛事提高T4/省选线段树魔扣OJ

MEX

暂无测试数据。

小 $\mathcal{L}$ 给出一个长度为 $n$​ 的序列 $a$​,序列中的每一个元素都在 $[0,m)$​ 范围内,现在对于每一个 $i\in[p,q]$​ 求出有多少个区间 $[l,r]$​ 中元素构成的集合的 $\operatorname{MEX}$​ 为 $i$​。(一个集合的 $\operatorname{MEX}$ 为这个集合中第一个没有出现的自然数,如 $\operatorname{MEX}\{0,1,2\}=3$,$\operatorname{MEX}\{1,2,3\}=0$)

输入格式

第一行两个整数 $n,m$,表示序列长度和数集大小。

第二行 $n$ 个整数,表示序列 $a$,且保证序列 $a$ 中元素在 $[0,m)$ 范围内。

第三行两个整数 $p,q$,表示小 $\mathcal{L}$ 要查询的范围。

输出格式

一行 $q-p+1$ 个整数,其中第 $i$ 个表示有多少个区间 $[l,r]$ 中的元素构成的集合的 $\operatorname{MEX}$ 为 $q+i-1$。

数据范围

对于 $10\%$ 的数据 $n\leq 233$。

对于 $20\%$ 的数据 $n\leq 2333$。

对于 $40\%$ 的数据 $n\leq 2\times 10^5$。

对于另外 $10\%$ 的数据 $q-p\leq 10$。

对于另外 $10\%$ 的数据 $a_i=i\pmod m$。

对于另外 $10\%$​ 的数据 $n=m$​ 且 $[0,m)$​ 中的每个值在序列中恰好只出现一次。

对于 $100\%$​ 的数据 $0\leq p\leq q\leq m\leq n\leq 10^6$​。

5 5
2 1 3 0 4
2 4
2 0 1
6 3
2 0 2 2 1 0
2 3
1 6