Gradiente de una Imagen

Dada una imagen en blanco y negro con altura h y anchura w, se te pide aplicar un filtro de gradiente. En lugar de usar píxeles blancos y negros, la imagen debe tener un gradiente basado en la distancia al píxel blanco más cercano. Inicialmente, todos los píxeles negros se establecen en 1, mientras que todos los píxeles blancos se establecen en 0. En la imagen resultante, los píxeles negros tendrán un valor igual a la distancia al píxel blanco más cercano.
La distancia se calcula por el número de pasos necesarios para pasar de una celda a otra moviéndose solo en direcciones horizontales o verticales.

Entrada

La primera línea de la entrada contiene 2 enteros h y w (1 ≤ h, w ≤ 500).
Las siguientes h líneas contienen w números que representan la imagen inicial.

Salida

El programa debe imprimir la imagen resultante.

Ejemplos

Entrada
Salida
3 4 1 1 1 0 1 1 0 0 1 0 0 1
3 2 1 0 2 1 0 0 1 0 0 1
Consejo
En lugar de iniciar BFS desde una sola celda, puedes iniciarlo desde múltiples fuentes.
En la literatura, esto se conoce como multi-source BFS.

Constraints

Time limit: 4 seconds

Memory limit: 512 MB

Output limit: 2.5 MB

To check your solution you need to sign in
Sign in to continue