AT_arc222_c [ARC222C] 2 Directions vs 4 Directions
题目描述
有一个 $N \times N$ 的网格,其中 $N$ 是一个不小于 $2$ 的整数。对于 $1 \leq i, j \leq N$,第 $i$ 行(自顶向下)、第 $j$ 列(自左向右)的格子标记为 $(i, j)$。
初始时,所有格子都是黑色的。对于每个格子 $(i,j)$,若要将其颜色由黑变白,需要支付 $A_{i,j}$ 的费用。
Alice 和 Bob 用这张网格和一个棋子进行游戏。游戏包含以下三个步骤:
#### 步骤 1
裁判指定棋子的初始位置。
#### 步骤 2
Alice 可以进行如下操作任意多次(也可以一次都不做):
- 任选一个黑色格子 $(i, j)$,支付 $A_{i,j}$ 的费用,将该格子变为白色。
#### 步骤 3
将棋子放在步骤 1 中指定的起始格子。然后,从 Alice 开始,Alice 和 Bob 轮流移动棋子。
- 在 Alice 的回合,Alice 可以将棋子移动到相邻的**左侧或右侧**的格子。
- 在 Bob 的回合,Bob 可以将棋子移动到任意相邻的**上、下、左或右**方向的格子。
棋子不能被移动到网格外。
步骤 3 在 Alice 和 Bob 各自操作完 $10^{10}$ 次后立即结束。
在步骤 3 结束时,如果棋子位于白色格子上,则 Alice 获胜;如果棋子位于黑色格子上,则 Bob 获胜。在步骤 3 中,Alice 和 Bob 都会采取最优策略以追求自己的胜利。
对于每一个起始格子 $(h, w)$,求 Alice 至少需要在步骤 2 支付多少总费用,才能保证无论 Bob 如何操作,最终获胜。
给出 $T$ 组测试用例,求解每组用例的答案。
输入格式
输入从标准输入读取,格式如下:
> $T$ $\mathrm{case}_1$ $\mathrm{case}_2$ $\vdots$ $\mathrm{case}_T$
每组测试用例的输入格式如下:
> $N$ $A_{1,1}$ $A_{1,2}$ $\ldots$ $A_{1,N}$
> $A_{2,1}$ $A_{2,2}$ $\ldots$ $A_{2,N}$
> $\vdots$
> $A_{N,1}$ $A_{N,2}$ $\ldots$ $A_{N,N}$
输出格式
每组测试用例输出 $N$ 行。
对于每组测试用例的第 $h$ 行,按顺序输出 $(h,1),(h,2),\ldots,(h,N)$ 作为初始格子的最小总费用,数字之间用空格分隔。
说明/提示
### 样例解释 1
这里对第一组测试样例做说明。
对于 $(h,w) = (1,1)$ 或 $(2,2)$,Alice 只需将 $(1,1)$ 和 $(2,2)$ 格子变为白色。
此时,每次 Bob 操作后,棋子一定在 $(1,1)$ 或 $(2,2)$。换句话说,在 Alice 和 Bob 各执行 $10^{10}$ 步后,棋子必然在 $(1,1)$ 或 $(2,2)$,因此无论怎样移动,Alice 都必赢。此时 Alice 支付的总费用为 $A_{1,1} + A_{2,2} = 1 + 2 = 3$。
对于 $(h,w) = (1,2)$ 或 $(2,1)$,可以验证 Alice 只需将 $(1,2)$ 和 $(2,1)$ 变为白色即可获胜。此时 Alice 支付的总费用为 $A_{1,2} + A_{2,1} = 4 + 3 = 7$。
### 约束条件
- $1 \leq T \leq 10^4$
- $2 \leq N \leq 500$
- $0 \leq A_{i,j} \leq 10^9$
- 所有输入都是整数。
- 所有测试用例中 $N^2$ 的总和不超过 $500^2$。
由 ChatGPT 5 翻译