编程题
### 问题描述
乐乐有一个 $N$ 行 $M$ 列的矩阵。矩阵的一些单元格为空,而其他包含了一条龙。乐乐想要选择一个矩阵单元格,使得到最近的龙的距离最大化。
我们定义一个单元格和一条龙之间的距离为从龙的初始位置到单元格所需的最小步数。在每一步中,龙可以向其最多八个相邻位置之一移动。
### 输入格式
第一行包含两个整数 $N$ 和 $M$。
接下来的 $N$ 行包含 $M$ 个二进制值:$0$ 表示该单元格为空,$1$ 表示该单元格被龙占据。每行的值之间用空格分隔且至少有一个空单元格。
### 输出格式
输出一个整数,表示单元格到最近的龙的最大距离。
### 样例输入
```
5 4
0 0 1 0
0 0 0 0
1 0 0 0
0 0 0 0
0 0 0 1
```
### 样例输出
```
2
```
### 评测数据规模
$1 \leq N, M \leq 50$。