Cavalos em um tabuleiro

Escreva uma função que retorne true se os cavalos estiverem posicionados em um tabuleiro de xadrez de modo que nenhum cavalo possa capturar outro cavalo. Aqui, os 0 representam casas vazias e os 1 representam cavalos.

Exemplos

CannotCapture(new int[,] {
  { 0, 0, 0, 1, 0, 0, 0, 0 },
  { 0, 0, 0, 0, 0, 0, 0, 0 },
  { 0, 1, 0, 0, 0, 1, 0, 0 },
  { 0, 0, 0, 0, 1, 0, 1, 0 },
  { 0, 1, 0, 0, 0, 1, 0, 0 },
  { 0, 0, 0, 0, 0, 0, 0, 0 },
  { 0, 1, 0, 0, 0, 0, 0, 1 },
  { 0, 0, 0, 0, 1, 0, 0, 0 }
}) ➞ true

CannotCapture(new int[,] {
  {1, 0, 1, 0, 1, 0, 1, 0},
  {0, 1, 0, 1, 0, 1, 0, 1},
  {1, 0, 1, 0, 1, 0, 1, 0},
  {0, 0, 0, 1, 0, 1, 0, 1},
  {1, 0, 0, 0, 1, 0, 1, 0},
  {0, 0, 0, 0, 0, 1, 0, 1},
  {1, 0, 1, 0, 1, 0, 1, 0},
  {1, 0, 0, 1, 0, 0, 0, 1} 
}) ➞ false

Notas

  • Os cavalos podem estar em qualquer uma das 64 casas.
  • Nenhuma outra peça além de cavalos existe.