CodeACM
HOT 100 · 矩阵 · LC 73

矩阵置零:ACM 模式刷题

按标准输入读取测试数据,输出结果后可在 CodeACM 在线运行和提交。

题目描述

给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。

输入格式

第一行输入两个整数 m 和 n。

接下来 m 行,每行输入 n 个整数。

输出格式

输出 m 行,每行 n 个整数,表示置零后的矩阵。

数据范围

  • 1 ≤ m, n ≤ 200
  • −2³¹ ≤ matrix[i][j] ≤ 2³¹ − 1

公开样例

样例 1

输入

3 3
1 1 1
1 0 1
1 1 1

输出

1 0 1
0 0 0
1 0 1

中心元素为 0,因此第二行和第二列被置零。

样例 2

输入

3 4
0 1 2 0
3 4 5 2
1 3 1 5

输出

0 0 0 0
0 4 5 0
0 3 1 0

第一行首尾两个元素为 0,因此第一行、第一列和第四列被置零。

练习建议

先根据输入输出格式写出可运行程序,再用公开样例检查结果;遇到边界情况时,补充自测用例后提交。