CF1805A.We Need the Zero

传统题 时间 2000 ms 内存 256 MiB 3 尝试 1 已通过 1 标签

We Need the Zero

题目描述

有一个由非负整数组成的数组 aa。你可以选择一个整数 xx,并令 bi=aixb_i = a_i \oplus x,对所有 1in1 \le i \le n,其中 \oplus 表示按位异或运算。是否存在这样一个 xx,使得表达式 b1b2bnb_1 \oplus b_2 \oplus \ldots \oplus b_n 的值等于 00

可以证明,如果存在合法的 xx,那么一定存在一个 xx 满足 0x<280 \le x < 2^8

输入格式

每个测试点包含多组测试数据。第一行包含测试用例的数量 tt1t10001 \le t \le 1000)。接下来是每组测试用例的描述。

每组测试用例的第一行包含一个整数 nn1n1031 \le n \le 10^3),表示数组 aa 的长度。

第二行包含 nn 个整数,表示数组 aa0ai<280 \le a_i < 2^8)。

保证所有测试用例中 nn 的总和不超过 10310^3

输出格式

对于每组测试用例,如果存在满足条件的整数 xx0x<280 \le x < 2^8),输出该整数 xx,否则输出 1-1

说明/提示

在第一个测试用例中,选择数字 66 进行操作后,数组 bb 变为 [7,4,3][7, 4, 3]743=07 \oplus 4 \oplus 3 = 0

在第三个测试用例中,也有其他答案,例如数字 00

由 ChatGPT 4.1 翻译

样例

5
3
1 2 5
3
1 2 3
4
0 1 2 3
4
1 2 2 3
1
1
6
0
3
-1
1

在线编程 IDE

建议全屏模式获得最佳体验