CF1747C Swap Game

题目描述

Alice 和 Bob 正在玩一个关于数组 $a$ 的游戏,数组包含 $n$ 个正整数。Alice 和 Bob 轮流行动,Alice 先手。 在每一回合,玩家需要进行如下操作: - 如果 $a_1 = 0$,该玩家输掉游戏,否则: - 玩家选择某个 $i$,其中 $2 \leq i \leq n$。然后玩家将 $a_1$ 的值减少 $1$,并将 $a_1$ 与 $a_i$ 交换。 如果两位玩家都采取最优策略,判断谁会赢得游戏。

输入格式

输入包含多组测试用例。第一行包含一个整数 $t$ $(1 \leq t \leq 2 \cdot 10^4)$,表示测试用例的数量。接下来是每个测试用例的描述。 每个测试用例的第一行包含一个整数 $n$ $(2 \leq n \leq 10^5)$,表示数组 $a$ 的长度。 第二行包含 $n$ 个整数 $a_1,a_2,\ldots,a_n$ $(1 \leq a_i \leq 10^9)$,表示数组 $a$ 的元素。 保证所有测试用例中 $n$ 的总和不超过 $2 \cdot 10^5$。

输出格式

对于每个测试用例,如果 Alice 能赢,输出 "Alice";否则输出 "Bob"。 输出时字母大小写不敏感,例如 "alIcE"、"Alice"、"alice" 都视为相同。

说明/提示

在第一个测试用例中,Alice 在她的回合只能选择 $i = 2$,使数组变为 $[1, 0]$。然后 Bob 也只能选择 $i = 2$,使数组变为 $[0, 0]$。由于 $a_1 = 0$,Alice 输掉了游戏。 在第二个测试用例中,玩家同样只能选择 $i = 2$。数组变化过程为:$[2, 1] \to [1, 1] \to [1, 0] \to [0, 0]$,Bob 输掉了游戏。 在第三个测试用例中,可以证明 Alice 有必胜策略。 由 ChatGPT 4.1 翻译