#LQ1321. 选数异或

选数异或

问题描述

给定一个长度为 nn 的数列 A1,A2,,AnA_{1}, A_{2}, \cdots, A_{n} 和一个非负整数 xx, 给定 mm 次查询, 每次询问能否从某个区间 [l,r][l, r] 中选择两个数使得他们的异或等于 xx

输入格式

输入的第一行包含三个整数 n,m,xn, m, x

第二行包含 nn 个整数 A1,A2,,AnA_{1}, A_{2}, \cdots, A_{n}

接下来 mm 行,每行包含两个整数 li,ril_{i}, r_{i} 表示询问区间 [li,ri]\left[l_{i}, r_{i}\right]

输出格式

对于每个询问, 如果该区间内存在两个数的异或为 xx 则输出 yes, 否则输出 no

4 4 1
1 2 3 4
1 4
1 2
2 3
3 3
yes
no
yes
no

样例说明

显然整个数列中只有 2, 3 的异或为 1。

评测用例规模与约定

对于 20% 的评测用例, 1n,m1001 \leq n, m \leq 100;

对于 40% 的评测用例, 1n,m10001 \leq n, m \leq 1000;

对于所有评测用例, $1 \leq n, m \leq 100000,0 \leq x<2^{20}, 1 \leq l_{i} \leq r_{i} \leq n$。

IO提示

请使用快读快写。