AT_abc223_h.[ABC223H] Xor Query

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

给定一个长度为 NN 的正整数序列 A=(A1,…,AN)A = (A_1, \dots, A_N)。

请处理 QQ 个查询。对于第 ii 个查询(1≤i≤Q1 \leq i \leq Q),判断是否可以从 ALi,ALi+1,…,ARiA_{L_i}, A_{L_i+1}, \dots, A_{R_i} 中选择至少一个元素,使得它们的异或和等于 XiX_i。

异或和的定义如下:对于整数 a,ba, b,它们的按位异或 axorba \mathrm{xor} b 定义为:

  • axorba \mathrm{xor} b 的二进制表示中,第 2k2^k 位(k≥0k \geq 0)的数,如果 a,ba, b 的二进制表示中该位只有一个为 11,则为 11,否则为 00。

例如,3xor5=63 \mathrm{xor} 5 = 6(二进制表示为:011xor101=110011 \mathrm{xor} 101 = 110)。

输入格式

输入以以下格式从标准输入读入。

NN QQ
A1A_1 A2A_2 …\ldots ANA_N
L1L_1 R1R_1 X1X_1
⋮\vdots
LQL_Q RQR_Q XQX_Q

输出格式

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

输入输出样例

  • 输入#1

    5 2
    3 1 4 1 5
    1 3 7
    2 5 7

    输出#1

    Yes
    No
  • 输入#2

    10 10
    8 45 56 9 38 28 33 5 15 19
    10 10 53
    3 8 60
    1 10 29
    5 7 62
    3 7 51
    8 8 52
    1 4 60
    6 8 32
    4 8 58
    5 9 2

    输出#2

    No
    No
    Yes
    No
    Yes
    No
    No
    No
    Yes
    Yes

说明/提示

数据范围

  • 1≤N≤4×1051 \leq N \leq 4 \times 10^5
  • 1≤Q≤2×1051 \leq Q \leq 2 \times 10^5
  • 1≤Ai<2601 \leq A_i < 2^{60}
  • 1≤Li≤Ri≤N1 \leq L_i \leq R_i \leq N
  • 1≤Xi<2601 \leq X_i < 2^{60}
  • 输入均为整数。

样例解释 1

对于第 11 个查询,可以选择 A1,A3A_1, A_3,使得异或和为 77。对于第 22 个查询,无论如何选择元素,都无法使异或和为 77。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页