题目描述
Troy 计划给 CCO 的学生拍一张合影,他向你寻求帮助。
有 K 个学生,编号从 1 到 K。Troy 忘记了学生的身高,但他记得没有两个学生的身高相同。
Troy 有一个序列 A1,A2,…,AN,表示合影中从左到右的学生顺序。一个学生可能在 A 中出现多次。你不确定这张合影会怎么拍,但你不愿意认为 Troy 犯了错误。
Troy 会给你 Q 个形式为 x,y 的询问,每个询问为「给定学生序列 Ax,Ax+1,…,Ay,他们的身高能否形成一个交替序列?」更具体地说,我们用 hi 表示第 i 个学生的身高。如果存在一种身高分配h1,h2,…,hK,使得 $h_{A_{x}}>h_{A_{x+1}}h_{A_{x+3}}<\ldots h_{A_{y}}$,回答 YES
;否则回答 NO
。
注意,每个查询都是独立的:也就是说,询问 i 的身高分配与询问 j 的身高分配无关 (i=j)。
输入格式
第一行包含三个用空格分隔的整数 N,K 和 Q。
第二行包含 N 个整数,表示 A1,A2,…,AN(1≤Ai≤K)。
接下来的 Q 行,每行包含两个用空格分隔的整数 x 和 y(1≤x<y≤N),表示一组查询。
输出格式
输出 Q 行。第 i 行,输出 YES
或者 NO
,表示 Troy 的第 i 个查询的答案。
提示
样例说明
对于第一个询问,不可能有 h1>h1,所以答案是 NO
。
对于第二个询问,h1>h2<h3>h1 的一种方案是 h1=160 cm,h2=140 cm,h3=180 cm。另一种方案是 h1=1.55 m,h2=1.473 m,h3=1.81 m。
对于第三个询问,不可能同时有 h1>h2 和 h1<h2。
数据范围
对于所有的数据,有 2≤N≤3000,2≤K≤N,1≤Q≤106。
子任务编号 |
分值 |
N |
K |
Q |
1 |
16 |
2≤N≤3000 |
K=2 |
1≤Q≤106 |
2 |
24 |
2≤N≤500 |
2≤K≤min(N,5) |
3 |
28 |
2≤N≤3000 |
2≤K≤N |
1≤Q≤2000 |
4 |
32 |
1≤Q≤106 |