#CF2045F. 三角网格游戏
三角网格游戏
F. 三角网格游戏
每个测试点时间限制: 秒
每个测试点内存限制: 兆字节
你的朋友 Anda 和 Kamu 决定玩一个名为“网格游戏”的游戏,并让你担任游戏管理员。作为游戏管理员,你设置了一个大小为 的三角形网格。网格有 行(编号 到 )。第 行有 个单元格;第 行的第 个单元格记为 。
在游戏开始前,会选定 个不同的单元格(编号 到 ):在单元格 上,你放置 个石头。然后你给 Anda 和 Kamu 一个整数 ,并开始游戏。
Anda 和 Kamu 轮流进行游戏,Anda 先手。玩家在自己的回合中执行以下操作:
- 选择一个至少有一个石头的单元格 。
- 从所选单元格中移除至少 个、至多 个石头。
- 对于每个满足以下条件的单元格 : 可以向单元格 添加零个或至多 个石头(也可以不加)。
下图展示了当 时,可以选择添加石头的所有可能单元格。左图选择了单元格 ,右图选择了单元格 。
(示意图略)
当玩家无法完成自己的回合(即网格中没有石头)时,该玩家输掉游戏,对方获胜。假设双方都采取最优策略,请确定谁会获胜。
输入
本题为多测试用例。第一行包含一个整数 (),表示测试用例的数量。
每个测试用例的第一行包含三个整数 、、(;)。
接下来 行,每行三个整数 、、(;)。保证 互不相同。
所有测试用例的 之和不超过 。
输出
对于每个测试用例,输出一行一个字符串,表示获胜的玩家。如果先手 Anda 获胜,输出 Anda;否则输出 Kamu。
样例
输入
3
2 2 4
1 1 3
2 1 2
100 2 1
4 1 10
4 4 10
10 5 2
1 1 4
3 1 2
4 2 5
2 2 1
5 3 4
输出
Anda
Kamu
Anda
样例解释
对于第一个测试用例:
第一回合,Anda 移走单元格 上的所有石头,然后在 上添加三个石头。此时只剩下单元格 上有五个石头,因此 Kamu 必须从该单元格移除石头。无论 Kamu 移除多少石头,Anda 都可以在下一次移除 上剩余的所有石头并获胜。
对于第二个测试用例:
Kamu 可以始终镜像 Anda 的每一步,直到 Anda 无法继续行动。