时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
经过多年的征战,牛牛在与牛可乐的对决渐渐处于下风,于是牛牛决定对牛可乐来一次大围剿。
战场可以看作一张

的地图,牛可乐的士兵只能上下左右移动,不能斜着移动,牛牛决定挖一圈陷阱包围牛可乐的士兵。
牛牛想知道包围牛可乐的士兵所需要的最少的陷阱数量是多少(划掉,具体请看update),但是牛牛并不会排兵布阵,于是只能求助于你了。
保证地图的边界处不会有士兵.
要求牛可乐使用的陷阱构成的包围圈与牛可乐的士兵之间要求是紧密接触的
输入描述:
第一行输入两个整数
和
,表示地图的大小
保证输出的字符串只包含

和

输出描述:
输出挖完陷阱后的地图,陷阱用
来表示.
示例1
输入
复制
6 5
.....
.###.
.#.#.
.###.
..##.
.....
输出
复制
.***.
*###*
*#.#*
*###*
.*##*
..**.
示例2
输入
复制
10 10
..........
..######..
.#######..
.#######..
.##.###...
.##..##...
.....##...
..........
..........
..........
输出
复制
..******..
.*######*.
*#######*.
*#######*.
*##*###*..
*##**##*..
.**.*##*..
.....**...
..........
..........
备注:
