题目名称: 环形取硬币游戏
题目描述:
Jerry和Tom在一个由 $n$ 个盒子围成的环形排列中玩游戏。每个盒子 $i$ 装有 $a_i$ 枚硬币。游戏规则如下:
-
轮流取硬币: Jerry先手,从 $1$ 号盒子开始取至少 $1$ 枚硬币。
-
取硬币限制:
-
如果前一个玩家取了 $i$ 号盒子的硬币,当前玩家必须从 $i+1$ 号盒子取硬币。
-
如果前一个玩家取了 $n$ 号盒子的硬币,当前玩家必须从 $1$ 号盒子取硬币。
-
-
失败条件: 如果轮到某位玩家时,其必须取的盒子中没有硬币,则该玩家失败。
假设双方都采取最优策略,判断谁会获胜。
输入格式:
-
第一行输入整数 $T$ ($1 \leq T \leq 100$),表示测试数据组数。
-
每组数据包含两行:
-
第一行: 整数 $n$ ($1 \leq n \leq 1000$),表示盒子数量。
-
第二行: $n$ 个整数 $a_i$ ($1 \leq a_i \leq 10^9$),表示每个盒子的硬币数量。
-
输出格式:
输出 $T$ 行,每行为 $\text{"Jerry"}$ 或 $\text{"Tom"}$,表示每组数据的获胜者。
输入样例1:
2
1
10
2
30 50
输出样例:
Jerry
Tom
示例解释:
-
第一组数据 ($n=1$, $a_1=10$):
Jerry取完 $10$ 枚硬币,Tom无法取,Jerry获胜。 -
第二组数据 ($n=2$, $a_1=30$, $a_2=50$):
Jerry和Tom轮流取硬币,最终Tom获胜 (具体策略需进一步分析)。