#ATagc045a. [AGC045A] Xor Battle

[AGC045A] Xor Battle

题目描述

22 个人,编号分别为 0011。还有一个初始值为 00 的变量 xx。接下来这两个人要进行一个游戏。游戏共进行 NN 轮,在第 ii 轮(1iN1 \leq i \leq N)中,将进行如下操作:

  • 编号为 SiS_i 的人可以选择以下两种操作之一:
    • xAix \oplus A_i 替换 xx。这里 \oplus 表示按位异或运算。
    • 什么都不做。

编号为 00 的人的目标是让最终 x=0x=0,而编号为 11 的人的目标是让最终 x0x \neq 0

请判断当两个人都采取最优策略时,最终 xx 是否等于 00

对于每组输入,请回答 TT 个测试用例。

输入格式

输入从标准输入读入。输入的第一行为:

TT

接下来有 TT 个测试用例。每个测试用例如下格式:

N A1 A2  AN SN\ A_1\ A_2\ \cdots\ A_N\ S

输出格式

对于每个测试用例,如果最终 x=0x=0,输出 0,否则输出 1。每个测试用例输出一行。

样例 1

输入

3
2
1 2
10
2
1 1
10
6
2 3 4 5 6 7
111000

输出

1
0
0

说明/提示

限制

  • 1T1001 \leq T \leq 100
  • 1N2001 \leq N \leq 200
  • 1Ai10181 \leq A_i \leq 10^{18}
  • SS 是仅由 01 组成的长度为 NN 的字符串
  • 输入的所有数均为整数

样例解释 1

对于第 11 个测试用例,如果编号为 11 的人将 xx 替换为 01=10 \oplus 1=1,无论编号为 00 的人怎么操作,最终 x0x \neq 0。对于第 22 个测试用例,无论编号为 11 的人做哪种操作,只要编号为 00 的人采取合适的操作,都可以让 x=0x=0

由 ChatGPT 4.1 翻译