AT_abc223_h [ABC223H] Xor Query

题目描述

给定一个长度为 $N$ 的正整数序列 $A = (A_1, \dots, A_N)$。 请处理 $Q$ 个查询。对于第 $i$ 个查询($1 \leq i \leq Q$),判断是否可以从 $A_{L_i}, A_{L_i+1}, \dots, A_{R_i}$ 中选择至少一个元素,使得它们的异或和等于 $X_i$。 异或和的定义如下:对于整数 $a, b$,它们的按位异或 $a \mathrm{xor} b$ 定义为: - $a \mathrm{xor} b$ 的二进制表示中,第 $2^k$ 位($k \geq 0$)的数,如果 $a, b$ 的二进制表示中该位只有一个为 $1$,则为 $1$,否则为 $0$。 例如,$3 \mathrm{xor} 5 = 6$(二进制表示为:$011 \mathrm{xor} 101 = 110$)。

输入格式

输入以以下格式从标准输入读入。 > $N$ $Q$ > $A_1$ $A_2$ $\ldots$ $A_N$ > $L_1$ $R_1$ $X_1$ > $\vdots$ > $L_Q$ $R_Q$ $X_Q$

输出格式

输出共 $Q$ 行。对于第 $i$ 个查询($1 \leq i \leq Q$),如果可以从 $A_{L_i}, A_{L_i+1}, \dots, A_{R_i}$ 中选择至少一个元素,使得它们的异或和等于 $X_i$,则输出 `Yes`,否则输出 `No`。

说明/提示

### 数据范围 - $1 \leq N \leq 4 \times 10^5$ - $1 \leq Q \leq 2 \times 10^5$ - $1 \leq A_i < 2^{60}$ - $1 \leq L_i \leq R_i \leq N$ - $1 \leq X_i < 2^{60}$ - 输入均为整数。 ### 样例解释 1 对于第 $1$ 个查询,可以选择 $A_1, A_3$,使得异或和为 $7$。对于第 $2$ 个查询,无论如何选择元素,都无法使异或和为 $7$。 由 ChatGPT 4.1 翻译