#P16250. [infO(1) Cup2022]Sumex子数组MEX

[infO(1) Cup2022]Sumex子数组MEX

题目描述

给定一个长度为 nn 的序列

a1,a2,,ana_1,a_2,\ldots,a_n

以及 qq 个相互独立的询问。

每个询问给出两个整数 l,rl,r。对所有满足

lijrl\le i\le j\le r

的连续子数组

ai,ai+1,,aj,a_i,a_{i+1},\ldots,a_j,

计算其最小未出现非负整数(MEX),并求这些 MEX 的总和。

一个序列的 MEX 是没有在该序列中出现的最小非负整数。例如:

  • 序列 0,1,4,20,1,4,2 的 MEX 为 33
  • 序列 1,2,3,41,2,3,4 的 MEX 为 00

输入格式

第一行包含两个整数 n,qn,q

第二行包含 nn 个整数 a1,a2,,ana_1,a_2,\ldots,a_n

接下来 qq 行,每行包含两个整数 l,rl,r,描述一个询问。

输出格式

按照输入顺序,对每个询问输出一行答案。

数据范围

  • 1n,q2×1051\le n,q\le 2\times10^5
  • 0ain0\le a_i\le n
  • 1lrn1\le l\le r\le n

子任务

子任务 分值 限制
1 3 1ain1\le a_i\le n
2 10 q200q\le200,且每个询问满足 rl200r-l\le200
3 12 n5000n\le5000
4 15 0,1,,n10,1,\ldots,n-1 在数组中各出现恰好一次
5 ai100a_i\le100,且不存在两个询问 i,ji,j 满足 li<ljl_i<l_jrj<rir_j<r_i
6 22 每个询问均满足 l=1l=1
7 23 无额外限制

样例

输入:
6 3
0 1 2 0 1 3
1 2
3 5
1 6

输出:
3
7
39

样例说明

对于询问 [1,2][1,2]

子数组 MEX
[0][0] 1
[1][1] 0
[0,1][0,1] 2

总和为 33

对于询问 [3,5][3,5],所有子数组的 MEX 总和为 77

对于询问 [1,6][1,6],全部 2121 个连续子数组的 MEX 总和为 3939