序列区间段查询问题:给出一个长度为 n 的序列 a 。q 次询问,每次给定 l,r,k,求有多少个数对 (l′,r′) 满足 l≤l′≤r′≤r,使得 mex({al′,al′+1,...,ar′})=k。
输入格式
输入的第一行包含两个整数 n,q。
接下来一行,包含 n 个数,表示序列 a 。
接下来 q 行,每行三个整数 l,r,k。
输出格式
对于每组询问,输出一行一个整数,表示答案。
样例数据
样例输入
10 10
0 0 4 1 1 3 0 4 6 1
2 2 1
4 10 2
1 4 0
4 8 0
4 4 1
1 6 0
5 8 0
2 10 3
3 9 6
1 4 0
样例输出
1
10
3
7
0
10
4
0
0
3
子任务
对于 10% 的数据,n,q≤1000。
对于 100% 的数据,1≤n,q≤230000,0≤ai,k≤109。
注
- 赛时并未提供空间限制,
“请选手自行评估”QOJ 上设置为 1 GB。