#380. 炸弹洗地

炸弹洗地

题目描述

R×CR \times C 的网格中,每个格子上有三种状态,. 表示空地,# 表示障碍物,123......9 表示炸弹,网格上标注的数字表示炸弹的威力。

一个位于 (x,y)(x,y) 的炸弹引爆后,假设其威力值为 cc,所有格子 (a,b)(a,b) 满足 ax+byc|a-x|+|b-y| \leq c​ 的位置都会被炸为空地。

现在同时引爆所有炸弹,请你输出所有炸弹爆炸后网格的状况。

输入格式

第一行包含 22 个正整数,表示 RRCC​。

接下来 RR 行,每行 CC 个字符,表示网格状况。

输出格式

输出共 RR 行,每行 CC 个字符,表示网格状况。

4 4
.1.#
###.
##2.
#.##
...#
#...
....
#...

样例解释1

网格 (1,2)(1,2) 上的炸弹威力为 11,会波及到的位置为 (1,1),(1,2),(1,3),(2,2)(1,1),(1,2),(1,3),(2,2)

网格 (3,3)(3,3) 上的炸弹威力为 22,会波及到的位置为 $(2,2),(2,3),(2,4),(3,2),(3,3),(3,4),(4,2),(4,3),(4,4),(1,3),(3,1)$。

4 6
#.#3#.
###.#.
##.###
#1..#.
......
#.....
#....#
....#.

数据范围

对于 20%20\% 的数据,1R,C1501 \leq R,C \leq 150

对于 100%100\% 的数据,1R,C15001 \leq R,C \leq 1500。​

提示

本题数据较大,建议使用比较快的读写方式。例如使用cincout前加上ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);