颜色与幸运数字
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

有一天小灰灰和小蓝在河边散步,河边从上游到下游分布着 n 颗小石子,其中第 i 颗小石子的颜色为 c_i

小蓝和小灰灰分享了她的幸运数字 k,但是小灰灰总是粗心大意的忘记这个数字。

所以她打算用 m 个问题来考验小灰灰,她的第 i 个问题是河边的第 l_i 到第 r_i 颗石子中,有哪些颜色的石子出现了恰好 k 次,由于这样的石子可能太多了,所以小灰灰将会回答这些颜色种类数字的和作为答案。

现在请你编写一个程序来计算出小灰灰每次回答的答案是多少。

输入描述:

第一行输入三个空格分隔的整数 n, mk

接下来一行 n 个空格分隔的整数,第 i 个数代表 c_i

接下来 m 行,第 i 行输入两个整数代表 l_ir_i

保证:
1\le n, m, c_i \le 10^6, 1 \le k \le n
1 \le l_i \le r_i \le n

输出描述:

输出共 m 行,第 i 行代表第 i 个询问的答案。
示例1

输入

复制
9 4 2
2 2 1 4 1 4 2 5 1
1 9
2 8
3 7
5 9

输出

复制
4
7
5
1