#P13683. 【MX-X16-T1】「DLESS-3」XOR and Greater Sum

【MX-X16-T1】「DLESS-3」XOR and Greater Sum

题目描述

给定长度为 nn 的非负整数序列 a1,,ana_1, \ldots, a_n

小 H 希望选出其中若干个数,使得这些数的按位异或和大于剩下数的按位异或和。小 H 可以选 00 个,此时这些数按位异或和为 00;也可以全选,此时剩下的数按位异或和为 00

请你告诉他是否有解。

输入格式

本题输入包含多组数据。

第一行,一个整数 TT,表示数据组数。对于每组数据:

  • 第一行,一个整数 nn
  • 第二行,nn 个整数 a1,,ana_1, \ldots, a_n

输出格式

对于每组数据,若有解输出一行一个字符串 Yes,否则输出一个字符串 No

4
6
1 1 4 5 1 4
5
1 1 4 5 1
7
1 9 1 9 8 1 0
7
1 9 1 9 8 1 9

Yes
No
Yes
No

提示

【样例解释】

对于第一组数据,序列 aa[1,1,4,5,1,4][1, 1, 4, 5, 1, 4]。我们可以选择子序列 [5][5],其异或和为 55。剩下的数字为 [1,1,4,1,4][1, 1, 4, 1, 4],其异或和为 11414=11\oplus 1\oplus 4\oplus 1\oplus 4=1。因为 5>15>1,所以有解。

对于第二组数据,序列 aa[1,1,4,5,1][1, 1, 4, 5, 1]。可以证明对于任意一种划分,选出数的异或和总是不大于剩下数的异或和。

对于第三组数据,可以选择子序列 [9,1][9,1],其异或和为 88。剩下数的异或和为 19810=11\oplus 9\oplus 8\oplus 1\oplus 0=1。因为 8>18>1,所以有解。

【数据范围】

对于所有数据,保证 1T1051\le T\le 10^51n,n1061\le n,\sum n\le 10^60ai<2300\le a_i<2^{30}

各测试点特殊限制如下:

测试点编号 n\sum n\le ai<a_i<
141\sim 4 2020 2302^{30}
5105\sim 10 50005000 262^6
112011\sim 20 10610^6 2302^{30}