数组重建计划

题目背景

在DT的编程实验室里,乐柠兔 正埋头研究一项名为“数组重建计划”的数学实验。

这时她的好朋友 噜噜 跑了过来,一边啃着胡萝卜,一边好奇地问:

“乐柠兔,你又在想什么新点子啦?”

乐柠兔神秘地笑了笑,从桌上拿出一段整数序列,说:

“噜噜,你看,我把一段数组切成不同的区间。 我想知道: 一个区间能不能被重新变成一个完全不同,但元素和不变的新数组? 并且新数组里的所有数,都必须是正整数!”

噜噜听得一头雾水,乐柠兔只好继续解释:

“你可以把区间看成数组 a。 如果存在另一个数组 b 满足:

  1. 两个数组的和相等;

  2. 每个位置都要不同(aibia_i ≠ b_i);

  3. 而且 bib_i 必须全部 > 0;

    那么我们就称这个区间是 好数组!”

噜噜一边听一边点头,似懂非懂。

乐柠兔叹口气:“总之,我现在有好多区间要判断,你能帮帮我吗?”

于是,这道题就交给了你。


输入格式

输入包含若干测试数据。

第一行输入整数 tt,表示测试数据组数。

对于每组测试数据:

  • 第一行包含两个整数 n,qn, q,表示数组长度与询问数。
  • 第二行包含 nn 个正整数 a1,a2,,ana_1,a_2,\dots,a_n
  • 接下来 qq 行,每行两个整数 li,ril_i, r_i,表示一个询问区间。

输出格式

对于每个询问,如果对应子数组是好数组,输出:YES

否则输出:NO


样例输入

1
7 6
3 1 2 1 10 2 2
1 3
2 4
3 5
4 7
1 7
5 5

样例输出

YES
NO
YES
YES
YES
NO

数据范围:

  • 1t1041 \le t \le 10^4
  • 1n,q3×1051 \le n, q \le 3 \times 10^5
  • 1ci1091 \le c_i \le 10^9
  • 所有测试数据中 n3×105\sum n \le 3 \times 10^5
  • 所有测试数据中 q3×105\sum q \le 3 \times 10^5

相关

在下列比赛中:

「果壳杯」 ROUND 29 (Div. 3)