#CF2045F. 三角网格游戏

三角网格游戏

F. 三角网格游戏
每个测试点时间限制:11
每个测试点内存限制:10241024 兆字节

你的朋友 Anda 和 Kamu 决定玩一个名为“网格游戏”的游戏,并让你担任游戏管理员。作为游戏管理员,你设置了一个大小为 NN 的三角形网格。网格有 NN 行(编号 11NN)。第 rr 行有 rr 个单元格;第 rr 行的第 cc 个单元格记为 (r,c)(r,c)

在游戏开始前,会选定 MM 个不同的单元格(编号 11MM):在单元格 (Ri,Ci)(R_i, C_i) 上,你放置 AiA_i 个石头。然后你给 Anda 和 Kamu 一个整数 KK,并开始游戏。

Anda 和 Kamu 轮流进行游戏,Anda 先手。玩家在自己的回合中执行以下操作:

  1. 选择一个至少有一个石头的单元格 (r,c)(r,c)
  2. 从所选单元格中移除至少 11 个、至多 KK 个石头。
  3. 对于每个满足以下条件的单元格 (x,y)(x,y)r+1xmin(N,r+K)r+1 \le x \le \min(N, r+K) cyc+xrc \le y \le c + x - r 可以向单元格 (x,y)(x,y) 添加零个或至多 KK 个石头(也可以不加)。

下图展示了当 K=3K=3 时,可以选择添加石头的所有可能单元格。左图选择了单元格 (2,1)(2,1),右图选择了单元格 (4,3)(4,3)

(示意图略)

当玩家无法完成自己的回合(即网格中没有石头)时,该玩家输掉游戏,对方获胜。假设双方都采取最优策略,请确定谁会获胜。

输入
本题为多测试用例。第一行包含一个整数 TT1T1001 \le T \le 100),表示测试用例的数量。
每个测试用例的第一行包含三个整数 NNMMKK1N1091 \le N \le 10^91M,K2000001 \le M, K \le 200000)。
接下来 MM 行,每行三个整数 RiR_iCiC_iAiA_i1CiRiN1 \le C_i \le R_i \le N1Ai1091 \le A_i \le 10^9)。保证 (Ri,Ci)(R_i, C_i) 互不相同。
所有测试用例的 MM 之和不超过 200000200000

输出
对于每个测试用例,输出一行一个字符串,表示获胜的玩家。如果先手 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 移走单元格 (1,1)(1,1) 上的所有石头,然后在 (2,1)(2,1) 上添加三个石头。此时只剩下单元格 (2,1)(2,1) 上有五个石头,因此 Kamu 必须从该单元格移除石头。无论 Kamu 移除多少石头,Anda 都可以在下一次移除 (2,1)(2,1) 上剩余的所有石头并获胜。

对于第二个测试用例:
Kamu 可以始终镜像 Anda 的每一步,直到 Anda 无法继续行动。