#abc274h. [abc274_h]XOR Sum of Arrays

[abc274_h]XOR Sum of Arrays

问题陈述

对于长度为 MM 的非负整数序列 B=(B1,B2,,BM)B=(B_1,B_2,\ldots,B_M)C=(C1,C2,,CM)C=(C_1,C_2,\ldots,C_M),定义 BBCC异或和 S(B,C)S(B,C) 为由非负整数组成的长度为 MM 的序列 $(B_1\oplus C_1, B_2\oplus C_2, \ldots, B_{M}\oplus C_{M})$,其中 \oplus 表示按位异或。
例如,如果 B=(1,2,3)B = (1, 2, 3)C=(3,5,7)C = (3, 5, 7),则 $S(B, C) = (1\oplus 3, 2\oplus 5, 3\oplus 7) = (2, 7, 4)$。

给定一个非负整数序列 A=(A1,A2,,AN)A = (A_1, A_2, \ldots, A_N)。定义 A(i,j)A(i, j) 为由 AA 的第 ii 到第 jj 个元素构成的连续子序列。
您将获得以下解释的 QQ 个查询,并被要求处理所有查询。

每个查询都会给出整数 aabbccddeeff,它们都在 11NN 之间(包括 11NN)。这些整数满足 aba \leq bcdc \leq defe \leq f,且 ba=dcb-a=d-c。如果 S(A(a,b),A(c,d))S(A(a, b), A(c, d)) 在字典排序上严格小于 A(e,f)A(e, f),则打印 Yes;否则,打印 No

什么是按位异或?两个整数 aabb 的排他逻辑和 aba \oplus b 定义如下。

  • aba \oplus b 的二进制表示法中的第 2k2^k 位(k0k \geq 0)如果是 11,那么就是当且仅当 aabb 的二进制表示法中的 2k2^k 位中只有一个是 11 时;否则,它是 00

例如,35=63 \oplus 5 = 6(二进制表示法中:011101=110011 \oplus 101 = 110)。什么是序列的字典排序?

一个序列 A=(A1,,AA)A = (A_1, \ldots , A_{|A|}) 被称为 严格小于 序列 B=(B1,,BB)B = (B_1, \ldots , B_{|B|}),当且仅当满足以下条件之一:

  1. A<B|A|<|B| 并且 (A1,,AA)=(B1,,BA)(A_{1},\ldots,A_{|A|}) = (B_1,\ldots,B_{|A|})
  2. 存在一个整数 1imin{A,B}1\leq i\leq \min\{|A|,|B|\},满足以下两个条件。
    • (A1,,Ai1)=(B1,,Bi1)(A_{1},\ldots,A_{i-1}) = (B_1,\ldots,B_{i-1})
    • Ai<BiA_i < B_i

约束条件

  • 1N5×1051 \leq N \leq 5 \times 10^5
  • 0Ai10180 \leq A_i \leq 10^{18}
  • 1Q5×1041 \leq Q \leq 5 \times 10^4
  • 1abN1 \leq a \leq b \leq N
  • 1cdN1 \leq c \leq d \leq N
  • 1efN1 \leq e \leq f \leq N
  • ba=dcb - a = d - c
  • 输入中的所有值都是整数。

输入

输入以标准输入给出,格式如下,其中 queryi\text{query}_i 表示第 ii 个查询:

NN QQ A1A_1 A2A_2 \ldots ANA_N query1\text{query}_1 query2\text{query}_2 \vdots queryQ\text{query}_Q

查询的格式如下:

aa bb cc dd ee ff

输出

打印 QQ 行。第 ii 行应包含第 ii 个查询的答案。


示例输入 1

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

示例输出 1

No
No
Yes
No
Yes

对于第一个查询,我们有 A(1,3)=(1,2,3)A(1, 3) = (1, 2, 3)A(2,4)=(2,3,1)A(2, 4) = (2, 3, 1),所以 $S(A(1,3),A(2,4)) = (1 \oplus 2, 2 \oplus 3, 3 \oplus 1) = (3, 1, 2)$。这在字典排序上大于 A(1,4)=(1,2,3,1)A(1, 4) = (1, 2, 3, 1),因此答案是 No
对于第二个查询,我们有 S(A(1,2),A(2,3))=(3,1)S(A(1,2),A(2,3)) = (3, 1)A(3,4)=(3,1)A(3,4) = (3, 1),它们相等,因此答案是 No


示例输入 2

10 10
725560240 9175925348 9627229768 7408031479 623321125 4845892509 8712345300 1026746010 4844359340 2169008582
5 6 5 6 2 6
5 6 1 2 1 1
3 8 3 8 1 6
5 10 1 6 1 7
3 4 1 2 5 5
7 10 4 7 2 3
3 6 1 4 7 9
4 5 3 4 8 9
2 6 1 5 5 8
4 8 1 5 1 9

示例输出 2

Yes
Yes
Yes
Yes
No
No
No
No
No
No