CF1451F Nullify The Matrix
题目描述
Jeel 和 Ashish 在一个 $n \times m$ 的矩阵上玩游戏。矩阵的行从上到下编号为 $1$ 到 $n$,列从左到右编号为 $1$ 到 $m$。两人轮流操作,Ashish 先手。
初始时,矩阵的每个格子里都有一个非负整数。每一回合,当前玩家必须依次执行以下所有操作:
- 选择一个值不为零的起始格子 $(r_1, c_1)$。
- 选择一个终止格子 $(r_2, c_2)$,满足 $r_1 \leq r_2$ 且 $c_1 \leq c_2$。
- 将起始格子的值减少某个正整数。
- 在所有从起始格子到终止格子的最短路径中任选一条,并对路径上的每个格子(除了起始格子,但终止格子可以修改)分别进行增加、减少或不变的操作。注意:
- 最短路径指经过格子的数量最少的路径;
- 路径上除了起始格子的其它格子(终止格子可以修改)都可以被修改;
- 每个格子的最终值必须是非负整数;
- 路径上的格子可以独立修改,且修改的数值不必相同。
如果起始格子和终止格子是同一个格子,则只需按规则减少该格子的值,不进行其它操作。
当所有格子的值都变为零时,游戏结束。无法进行操作的玩家判负。可以证明,如果双方都采取最优策略,游戏一定会在有限步内结束。
给定初始矩阵,如果双方都采取最优策略,预测谁会获胜。
输入格式
第一行包含一个整数 $t$($1 \leq t \leq 10$),表示测试用例的数量。每个测试用例的描述如下:
每个测试用例的第一行包含两个整数 $n$ 和 $m$($1 \leq n, m \leq 100$),表示矩阵的行数和列数。
接下来的 $n$ 行,每行包含 $m$ 个用空格分隔的整数 $a_{i,j}$($0 \leq a_{i,j} \leq 10^6$),表示矩阵中每个格子的初始值。
输出格式
对于每个测试用例,如果 Ashish 能获胜,输出 "Ashish";否则输出 "Jeel"(不带引号)。
说明/提示
在第一个测试用例中,矩阵中唯一的格子的值为 $0$。Ashish 无法进行任何操作,Jeel 获胜。
在第二个测试用例中,Ashish 可以选择 $(r_1, c_1) = (r_2, c_2) = (1,3)$,将该格子的值减为 $0$,此时矩阵变为 $[0, 0, 0]$。Jeel 无法进行任何操作,Ashish 获胜。
由 ChatGPT 4.1 翻译