AT_pakencamp_2024_day3_1_h Big XOR Game
题目描述
有 $N$ 张写有整数的卡片。第 $i$ 张卡片上写着 $A_i$。
Alice 和 Bob 用这 $N$ 张卡片进行游戏。一开始,所有卡片都在牌堆里。由 Alice 先手,二人轮流从牌堆中取卡片,直到所有卡片都被取完,每次操作如下:
- 从牌堆中选择 $1$ 张卡片,将其拿到自己手中。
最后,自己手中所有卡片上写着的整数的异或和记为分数。分数较高的人获胜,如果分数相同则为平局。
求在双方都采取最优策略时,比赛最终是平局,还是 Alice 胜,或者 Bob 胜。
本题有 $Q$ 个测试用例,请分别作答。
异或的定义如下:整数 $a, b$ 的异或 $a \oplus b$,即 $a \oplus b$ 的每一位等于 $a$ 和 $b$ 在该位上只有一个为 $1$ 时该位为 $1$,否则为 $0$。
例如,$3 \oplus 5 = 6$(二进制即 $011 \oplus 101 = 110$)。
一般情况下,$k$ 个整数 $p_1, \dots, p_k$ 的异或和定义为 $(\cdots((p_1 \oplus p_2) \oplus p_3)\oplus \cdots \oplus p_k)$,并且可以证明这个异或和与顺序无关。
何为“最优策略”?即:
- 若可以确保无论对方如何操作都能获胜,则采取保证获胜的行动;
- 否则,如果可以确保无论对方如何操作都不会输,则采取保证不输的行动;
- 如果都无法做到,则随意行动。
输入格式
输入按下述格式从标准输入读入:
> $Q$
> $case_1$
> $case_2$
> $\vdots$
> $case_Q$
这里,$case_i$ 代表第 $i$ 个测试用例。
每个测试用例如下格式:
> $N$
> $A_1\ A_2\ \ldots\ A_N$
输出格式
对于每个测试用例,若最终为平局则输出 Draw,若 Alice 获胜则输出 Alice,若 Bob 获胜则输出 Bob。
说明/提示
### 样例解释 1
对于第 $1$ 个测试用例,操作如下:
Alice 取走 $1$ 这张卡片。Alice 的分数为 $1$,Bob 的分数为 $0$,Alice 获胜。
对于第 $2$ 个测试用例,操作如下:
Alice 取走 $100$ 这张卡片。然后 Bob 也取走 $100$ 这张卡片。Alice、Bob 的分数都是 $100$,所以是平局。
### 数据范围
- $1 \leq Q \leq 2 \times 10^{5}$
- $1 \leq N \leq 2 \times 10^{5}$ ($1 \leq i \leq N$)
- $0 \leq A_i \leq 10^{18}$ ($1 \leq i \leq N$)
- $\sum N \leq 2 \times 10^5$
- 输入均为整数。
由 ChatGPT 5 翻译