#arc091d. [arc091_d]Strange Nim
[arc091_d]Strange Nim
题目描述
高桥和青木正在玩一个取石子的游戏。一开始,有 堆石头,第 堆中有 个石头,并且与其关联的整数为 。
从高桥开始,高桥和青木轮流执行以下操作:
- 选择一堆石头。如果选择第 堆,且该堆剩下 个石头,从该堆中移除 到 (包括 和 )之间的任意数量的石头。
第一个无法执行操作的玩家将输掉游戏。假设双方玩家都采取最优策略,请确定游戏的获胜者。其中, 表示不大于 的最大整数。
约束条件
- 所有输入数据均为整数。
输入
从标准输入读取输入。数据格式如下:
:
输出
如果高桥会赢得游戏,则打印 Takahashi
;如果青木会赢得游戏,则打印 Aoki
。
示例输入 1
2
5 2
3 3
示例输出 1
Aoki
一开始,可以从第一堆中最多移除 个石头,从第二堆中最多移除 个石头。
- 如果高桥首先从第一堆中拿走两个石头,现在可以从第一堆中最多移除 个石头,从第二堆中最多移除 个石头。
- 然后,如果青木从第二堆中拿走一个石头,现在可以从第一堆中最多移除 个石头,而从第二堆中无法再移除更多的石头(因为 )。
- 然后,如果高桥从第一堆中拿走一个石头,现在可以从第一堆中最多移除 个石头,而从第二堆中无法再移除更多的石头。
- 然后,如果青木从第一堆中拿走一个石头,现在可以从第一堆中最多移除 个石头,而从第二堆中无法再移除更多的石头。
不能进行更多操作,因此青木获胜。如果高桥采取不同的策略,青木也可以通过相应的策略获胜。
示例输入 2
3
3 2
4 3
5 1
示例输出 2
Takahashi
示例输入 3
3
28 3
16 4
19 2
示例输出 3
Aoki
示例输入 4
4
3141 59
26535 897
93 23
8462 64
示例输出 4
Takahashi