/ Vijos / 题库 /

位图

位图

时间限制:1秒  内存限制:256M


【题目描述】

  给出一个大小为 \(n\) 行 \(m\) 列的矩形位图。该位图的每一个象素点不是白色就是黑色,但是至少有一个象素点是白色。在 \(i\) 行 \(j\) 列的象素点我们称为点\((i,j)\)。两个象素点 \(p_1 = (i_1,j_1)\) 和 \(p_2 = (i_2,j_2)\) 之间的距离定义如下:\(d(p_1,p_2)=|i_1-i_2|+|j_1-j_2|\)。

  现在的任务是:对于每一个象素点,计算它到最近的白色点的距离。如果它本身是白色点,距离为 0。

【输入格式】

  第 1 行:2 个整数 \(n,m\)。
  接下来 \(n\) 行,每一行有一个长度为 \(m\) 的 0/1 字符串,描述一行象素点。如果点\((i,j)\)为白色,则值为 1,否则值为 0。

【输出格式】

  共 \(n\) 行,每行有 \(m\) 个整数,数之间用 1 个空格分开,分别表示对应的象素点距离白色点的距离。

【输入输出样例】

 Input

3 4
0001
0011
0110

 Output

3 2 1 0
2 1 0 0
1 0 0 1

【数据限制】

  对于 \(100\%\) 的数据,\(1≤n,m≤182\)。

【来源】

  Mr.he

信息

ID
2236
难度
(无)
分类
图结构 | 最短路 点击显示
标签
(无)
递交数
0
已通过
0
通过率
?
被复制
1
上传者