Patrón de tablero de ajedrez

Published by Helen Yu in

Crea una función que devuelva true si el arreglo de entrada bidimensional de n x n tiene un patrón de tablero de ajedrez.

Ejemplos

isCheckerboard([
  [1, 1],
  [0, 1]
]) ➞ false

isCheckerboard([
  [0, 1],
  [1, 0]
]) ➞ true

isCheckerboard([
  [1, 0, 1, 0, 1],
  [0, 1, 0, 1, 0],
  [1, 0, 1, 0, 1],
  [0, 1, 0, 1, 0],
  [1, 0, 1, 1, 1]
]) ➞ false

isCheckerboard([
  [1, 0, 1, 0, 1],
  [0, 1, 0, 1, 0],
  [1, 0, 1, 0, 1],
  [0, 1, 0, 1, 0],
  [1, 0, 1, 0, 1]
]) ➞ true

Notas

  • Un elemento del arreglo sigue el patrón de tablero de ajedrez si los elementos directamente a la izquierda, derecha, arriba y abajo son de un tipo diferente, y los elementos en diagonal son del mismo tipo.
  • El elemento de la esquina superior izquierda puede ser 0 o 1.