#546. 消除类游戏

    ID: 546 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>基础算法模拟CCF CSP认证第 6 次CCF CSP软件能力认证

消除类游戏

问题描述

消除类游戏是在一个包含 nnmm 列的棋盘上进行的,每个方格上都有一个有颜色的棋子。 当一行或一列上有连续三个或更多相同颜色的棋子时,这些棋子会被消除。

当存在多处可以被消除时,这些地方的棋子会同时被消除。

一个棋子可能在某一行和某一列同时被消除。

给定初始棋盘,请输出经过一次消除后的棋盘。

输入格式

第一行包含两个整数 n,mn, m,用空格分隔,分别表示棋盘的行数和列数,1n,m301 \le n, m \le 30

接下来 nn 行,每行包含 mm 个整数,表示棋盘上的棋子颜色,颜色编号为 1199

输出格式

输出 nn 行,每行 mm 个整数,相邻整数用空格分隔。

如果一个方格中的棋子被消除,则输出 00;否则输出该棋子的颜色编号。

样例输入 1

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

样例输出 1

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

样例解释 1

棋盘中第 4 列的 1 和第 4 行的 2 可以被消除,其他棋子保留。

样例输入 2

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

样例输出 2

2 2 3 0 2
3 0 0 0 0
2 3 2 0 3
2 2 0 0 0

样例解释 2

棋盘中所有的 1 以及最后一行的 3 可以被同时消除,其他棋子保留。