CF1438C Engineer Artem
题目描述
Artem 正在制造一个新机器人。他有一个由 $n$ 行 $m$ 列组成的矩阵 $a$。第 $i$ 行第 $j$ 列的单元格中写有一个值 $a_{i,j}$。
如果两个相邻的单元格包含相同的值,机器人就会损坏。如果没有两个相邻的单元格包含相同的值,则称该矩阵是“好”的。这里,两个单元格被认为是相邻的,当且仅当它们有公共边。
Artem 想通过将某些单元格的值加一,使得 $a$ 变成一个“好”的矩阵。
更正式地说,请找到一个“好”的矩阵 $b$,满足以下条件:
- 对于所有合法的 $(i,j)$,要么 $b_{i,j} = a_{i,j}$,要么 $b_{i,j} = a_{i,j}+1$。
对于本题的限制,可以证明总是存在这样的矩阵 $b$。如果有多个满足条件的矩阵,你可以输出任意一个。请注意,你不需要最小化加一的次数。
输入格式
每组测试数据包含多个测试用例。第一行包含测试用例的数量 $t$($1 \le t \le 10$)。接下来是每个测试用例的描述。
每个测试用例的第一行包含两个整数 $n, m$($1 \le n \le 100$,$1 \le m \le 100$),分别表示行数和列数。
接下来的 $n$ 行,每行包含 $m$ 个整数。第 $i$ 行第 $j$ 个整数为 $a_{i,j}$($1 \leq a_{i,j} \leq 10^9$)。
输出格式
对于每个测试用例,输出 $n$ 行,每行包含 $m$ 个整数。第 $i$ 行第 $j$ 个整数为 $b_{i,j}$。
说明/提示
在所有测试用例中,你可以验证没有两个相邻的单元格具有相同的值,并且 $b$ 是通过将 $a$ 中的某些值加一得到的。
由 ChatGPT 4.1 翻译