问题 N: 像素放置

内存限制:256 MB 时间限制:1 S
题面:传统 评测方式:文本比较 上传者:
提交:11 通过:4

题目描述

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

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

原题链接:[https://www.luogu.com.cn/problem/P9237](https://www.luogu.com.cn/problem/P9237)

输入格式

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

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

输出格式

输出 $n$ 行,每行包含 $m$ 个字符,表示答案。如果网格填充白色则用字符 $0$ 表示,如果网格填充黑色则用字符 $1$ 表示。

输入样例 复制

6 8
_1__5_1_
1_4__42_
3__6__5_
___56___
_688___4
_____6__

输出样例 复制

00011000
00111100
01000010
11111111
01011110
01111110

数据范围与提示

#### 【样例说明】

![image](https://cdn.luogu.com.cn/upload/image_hosting/v8u2zzne.png)

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

#### 【评测用例规模与约定】

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

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