#P9237. [蓝桥杯 2023 省 A] 像素放置

[蓝桥杯 2023 省 A] 像素放置

题目描述

小蓝最近迷上了一款名为《像素放置》的游戏,游戏在一个 n×mn \times m 的网格棋盘上进行,棋盘含有 nn 行,每行包含 mm 个方格。玩家的任务就是需要对这 n×mn \times m 个方格进行像素填充,填充颜色只有黑色或白色两种。有些方格中会出现一个整数数字 x(0x9)x(0 \leq x \leq 9),这表示当前方格加上周围八个方向上相邻的方格(分别是上方、下方、左方、右方、左上方、右上方、左下方、右下方)共九个方格内有且仅有 xx 个方格需要用黑色填充。

玩家需要在满足所有数字约束下对网格进行像素填充,请你帮助小蓝来完成。题目保证所有数据都有解并且解是唯一的。

输入格式

输入的第一行包含两个整数 n,mn,m,用一个空格分隔,表示棋盘大小。

接下来 nn 行,每行包含 mm 个字符,表示棋盘布局。字符可能是数字 090 \sim 9,这表示网格上的数字;字符还有可能是下划线(ASCII\text{ASCII} 码为 9595),表示一个不带有数字的普通网格。

输出格式

输出 nn 行,每行包含 mm 个字符,表示答案。如果网格填充白色则用字符 00 表示,如果网格填充黑色则用字符 11 表示。

6 8
_1__5_1_
1_4__42_
3__6__5_
___56___
_688___4
_____6__
00011000
00111100
01000010
11111111
01011110
01111110

提示

【样例说明】

image

上图左是样例数据对应的棋盘布局,上图右是此局游戏的解。例如第 33 行第 11 列处的方格中有一个数字 33,它周围有且仅有 33 个格子被黑色填充,分别是第 33 行第 22 列、第 44 行第 11 列和第 44 行第 22 列的方格。

【评测用例规模与约定】

对于 50%50 \% 的评测用例,1n,m51 \leq n,m \leq 5

对于所有评测用例,1n,m101 \leq n,m \leq 10