U526285 麦克风
题目背景
Pophil 想唱歌,他想知道唱歌时最大可以用多少音量且不会吵到 Nungt。
题目描述
给出一个 $n\times m$ 个字符构成的地图:
1. 每一个字符表示一个人或物。
1. `.` 表示空位。
1. `p` 表示 Pophil 的位置,且只有一个。
1. `n` 表示 Nungt 的位置,且也只有一个。
1. `x` 表示墙(我不会告诉你这是隔音墙)。
Pophil 发出的声音会逐渐变小(假设声音**只会横竖传播**,~~虽然很不合理~~)。只要 Nungt 听到的声音的音量 $=0$,视为一种合法的方案。详见样例。
输入格式
输出共 $n+1$ 行,第一行两个整数 $n,m$,接下来一个矩阵,表示地图。
输出格式
一个整数 $k$,表示 Pophil 唱歌时可以用的不会吵到 Nungt 的最大音量,如果 Nungt 不可能听到声音,输出 $−1$。
说明/提示
**【样例 #1 解释】**
当音量为 1 时,图如下:
```c
xxx00xn000
x00xx00100
000000xpxx
000000xxx0
000x0x0000
```
当音量为 2 时,图如下:
```c
xxx00xn100
x00xx01210
000000xpxx
000000xxx0
000x0x0000
```
当音量为 3 时,图如下:
```c
xxx00xn210
x00xx12321
000000xpxx
000000xxx0
000x0x0000
```
因此,最大 $k=2$。
**【样例 #2 解释】**
声音完全被挡住。
**【样例 #3 解释】**
$k=57$。
**【数据范围】**
对于 $100\%$ 的数据,保证:
$3\leq n,m\leq 1000\\1\leq k\leq n\times m-2$