1559: [蓝桥杯2021初赛] 异或数列

内存限制:256 MB 时间限制:1 S 标准输入输出
题目类型:传统 评测方式:文本比较 上传者:
提交:706 通过:224

题目描述

Alice 和Bob 正在玩一个异或数列的游戏。
初始时,Alice 和Bob 分别有一个整数a 和b,初始值为0。
有一个给定的长度为n 的公共数列X1, X2, ... , Xn。
Alice 和Bob 轮流操作,Alice 先手,每步可以在以下两种选项中选一种:
选项1:从数列中选一个Xi 给Alice 的数异或上,或者说令a 变为a Xi。(其中 表示按位异或)
选项2:从数列中选一个Xi 给Bob 的数异或上,或者说令b 变为b Xi。
每个数Xi 都只能用一次,当所有Xi 均被使用后(n 轮后)游戏结束。
游戏结束时,拥有的数比较大的一方获胜,如果双方数值相同,即为平手。
现在双方都足够聪明,都采用最优策略,请问谁能获胜?

输入格式

每个评测用例包含多组询问。询问之间彼此独立。
输入的第一行包含一个整数T,表示询问数。
接下来T 行每行包含一组询问。
其中第i 行的第一个整数ni 表示数列长度,随后ni 个整数X1, X2, ... , Xni 表示数列中的每个数。
1 ≤ T ≤ 200000, 1 ≤ sum(ni) ≤ 200000, 0 ≤ Xi < 2^20

输出格式

输出T 行,依次对应每组询问的答案。
每行包含一个整数1、0 或-1 分别表示Alice 胜、平局或败。

输入样例 复制

4
1 1
1 0
2 2 1
7 992438 1006399 781139 985280 4729 872779 563580

输出样例 复制

1
0
1
1