H - 遥远的糖果 HihoCoder - 1478

给定一个N x M的01矩阵,其中1表示人,0表示糖。对于每一个位置,求出每个位置离糖的最短距离是多少。

矩阵中每个位置与它上下左右相邻的格子距离为1。

Input 第一行包含两个整数,N和M。

以下N行每行M个0或者1。

数据保证至少有1块糖。

1 ⇐ N, M ⇐ 800

Output 输出N行,每行M个空格分隔的整数。表示每个位置最近的糖离它的位置。

Sample Input
4 4  
0110  
1111  
1111  
0110
Sample Output
0 1 1 0  
1 2 2 1  
1 2 2 1  
0 1 1 0

思路

  • 题意:给我们一个$n*m$的二维举证,在这个矩阵上的元素由0、1构成,其中0代表糖果,1代表人,让求人到糖果所以到最短距离(相邻元素值的间隔是1)
  • 典型的bfs问题,我们把可以把所有糖
上一篇:flask全栈开发5 SQLAlchemy


下一篇:[题解向] Manacher简单习题