Número de minas vecinas de Buscaminas

Crea una función que recibe una representación en forma de arreglo de un tablero de Buscaminas y devuelve otro tablero donde el valor de cada celda es la cantidad de minas vecinas.

Ejemplos

La entrada puede verse así:

[
  [0, 1, 0, 0],
  [0, 0, 1, 0],
  [0, 1, 0, 1],
  [1, 1, 0, 0],
]

El 0 representa un espacio vacío . El 1 representa una mina.

Tendrás que reemplazar cada mina por un 9 y cada espacio vacío por el número de minas adyacentes; la salida se verá así:

[
  [1, 9, 2, 1],
  [2, 3, 9, 2],
  [3, 9, 4, 9],
  [9, 9, 3, 1],
]

Notas

  • Como en la salida se usan los números 0-8 para determinar la cantidad de minas adyacentes, el número 9 se usará para identificar las minas.
  • Hay una página de Wikipedia que explica cómo funciona Buscaminas disponible en la pestaña Resources.