#P13943. [2024多校联盟省选模拟]维兹南与蘑菇

    ID: 13156 传统题 4000ms 512MiB 尝试: 1 已通过: 1 难度: 9 上传者: 标签>CF2800线段树数据结构扫描线枚举二分树状数组

[2024多校联盟省选模拟]维兹南与蘑菇

题目描述

时过境迁,为了复仇大业,维兹南又一次来到了这片暮光的森林,他想要招募一批菌菇饲养者。

具体的,现在有一排各种颜色的炸弹蘑菇,颜色用 0n0\sim n 来表示。

  • 定义一个区间 [l,r][l,r] 的炸弹蘑菇造成的伤害为:最小的未出现在其中的颜色(即该区间颜色集合的 mex\operatorname{mex})。
  • 定义一个咀嚼蘑菇 [l,r][l,r] 造成的伤害为:本质不同的区间 [l,r][l,r][l',r']\subseteq [l,r] 的炸弹蘑菇造成的伤害(mex\operatorname{mex})的个数。
  • 定义一个菌菇饲养者 [l,r][l,r] 的伤害为:所有区间 [l,r][l,r][l',r']\subseteq [l,r] 的咀嚼蘑菇造成的伤害之和。

他要多次向你询问一个菌菇饲养者 [l,r][l,r] 的伤害。

简要题意:求区间所有子区间的「子区间本质不同 mex\operatorname{mex} 个数」之和。

输入格式

第一行两个数 n,mn,m,表示序列长度和询问个数。
第二行 nn 个数,表示每个蘑菇的颜色。
接下来 mm 行,每行两个数 l,rl,r,表示询问的区间。

输出格式

mm 行,第 ii 行为第 ii 个询问的答案。

10 10
1 0 2 0 5 3 6 0 1 2
1 10
1 6
8 8
3 7
3 8
5 5
8 9
1 4
2 3
5 7
146
45
1
22
33
1
5
21
4
6
20 10
3 2 1 0 0 0 4 1 2 3 2 1 1 4 5 5 6 3 2 1
1 20
8 18
3 5
1 9
12 16
8 10
1 11
1 16
20 20
3 17
3
621
66
10
121
15
6
192
399
1
295

样例解释(节选)

对于样例一的倒数第三个询问(原文给出的示意):

区间 [1,1][1,1] [1,2][1,2] [1,3][1,3] [1,4][1,4] [2,2][2,2] [2,3][2,3] [2,4][2,4] [3,3][3,3] [3,4][3,4] [4,4][4,4]
炸弹蘑菇 0 2 3 1 1 0 1 1
咀嚼蘑菇 1 3 4 2 1 2
菌菇饲养者 5 12 21 4 9 4

数据范围与提示

  • 1n,m5×1051\le n,m\le 5\times 10^5
  • 每个蘑菇的颜色 [0,n]\in [0,n]
测试点编号 nn mm 特殊性质
1 2×105\le 2\times 10^5 蘑菇的颜色 >0>0
2–6 10\le 10
7–12 2×103\le 2\times 10^3
13–14 2×105\le 2\times 10^5 蘑菇颜色 [0,10]\in [0,10]
15–16
17–20 5×105\le 5\times 10^5