传统题 1000ms 256MiB

Jerry的01矩阵

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

Jerry是一个很强大但是很有爱的人。

Jerry现在有一个 n×mn \times m 的01矩阵AA,他希望得到一个合法的01矩阵BB

但是他现在在工作,于是求助于你,并规定了一些要求。

定义一个0101矩阵是合法的当且仅当没有任何两个相邻的元素是相等的(上下左右为相邻)。

你可以进行的操作是将矩阵中若干元素反转,最终输出合法的01矩阵。

形式化地说,有初始矩阵 AA ,对于(i,j)(i,j)位置的元素来说,A(i,j)=A(i,j)A(i,j) = A(i,j)A(i,j)=A(i,j)1A(i,j) = A(i,j) \bigoplus 1

表达式 xyx \bigoplus y 表示对数字 xxyy 进行异或运算,在C++C++中的符号为 ^

注意,每个位置最多能变化一次,对于这个问题的约束,可以证明一定可以生成合法的矩阵。如果有多个这样的表,则可以输出其中任何一个。

例如,给定一个矩阵AA

[1010]\begin{bmatrix} 1 & 0 \\ 1 & 0\end{bmatrix}

若干次操作后,可以变成合法的矩阵BB,为

[1001]\begin{bmatrix} 1 & 0 \\ 0 & 1\end{bmatrix}

输入

第一行输入 n,m1n2,0001m2,000n, m( 1 \le n \le 2,000,1 \le m \le 2,000) ,表示给定的 0101 矩阵的大小。

接下来nn行,每行mm个数表示所给定的0101矩阵。第ii行第jj个数表示A(i,j)A(i,j)

输出

接下来nn行,每行mm个数表示生成的合法的0101矩阵。第ii行第jj个数表示B(i,j)B(i,j)

样例

2 2
1 0
1 0
1 0
0 1

2024年天梯赛训练成果验收赛

未参加
状态
已结束
规则
IOI
题目
14
开始于
2024-4-14 13:00
结束于
2024-4-14 16:00
持续时间
3 小时
主持人
参赛人数
28