#abc075b. [abc075_b]Minesweeper
[abc075_b]Minesweeper
题目描述
给定一个 的网格。
网格中的方块由 个字符串 描述。
字符串 中的第 个字符对应着位于从上往下数的第 行、从左往右数的第 列的方块 。
.
表示一个空方块,#
表示一个包含炸弹的方块。
海豚对于每个空方块周围有多少个水平、垂直或对角线方向上相邻的炸弹方块感兴趣。
(下文中,我们将以此意思简单地称为“相邻”。对于每个方块,最多有八个相邻方块。)
他决定用一个数字来代替我们 个字符串中的每个 .
,这个数字表示与对应的空方块相邻的炸弹方块的数量。
打印出处理过后的字符串。
约束条件
- 是长度为 的字符串,由
#
和.
构成。
输入
输入通过标准输入给出,格式如下:
:
输出
打印处理过后的 个字符串。
第 行应该包含长度为 的字符串 ,其中在网格内从上往下数的第 行、从左往右数的第 列对应的字符是 中的第 个字符 。
示例输入 1
3 5
.....
.#.#.
.....
示例输出 1
11211
1#2#1
11211
例如,我们观察位于从上往下数的第一行、从左往右数的第一列的空方块。
这个空方块周围有一个相邻的炸弹方块:位于从上往下数的第二行、从左往右数的第二列的方块。
因此,与这个空方块对应的 .
被替换为 1
。
示例输入 2
3 5
#####
#####
#####
示例输出 2
#####
#####
#####
可能没有空方块。
示例输入 3
6 6
#####.
#.#.##
####.#
.#..#.
#.##..
#.#...
示例输出 3
#####3
#8#7##
####5#
4#65#2
#5##21
#4#310