Cuadrado mágico

En matemáticas recreativas, una matriz cuadrada de números, normalmente enteros positivos, se denomina cuadrado mágico si las sumas de los números de cada fila, cada columna y ambas diagonales principales son iguales.

Crea una función que reciba como argumento una matriz 2D cuadrada y devuelva un Boolean (si lo es: true, y si no: false).

Ejemplos

IsMagicSquare(new int[][] {
  { 2, 7, 6 },
  { 9, 5, 1 },
  { 4, 3, 8 }
}) ➞ true

IsMagicSquare(new int[][] {
  { 16, 3, 2, 13 },
  { 5, 10, 11, 8 },
  { 9, 6, 7, 12 },
  { 4, 15, 14, 1 }
}) ➞ true

IsMagicSquare(new int[][] {
  { 1, 14, 14, 4 },
  { 11, 7, 6, 9 },
  { 8, 11, 10, 5 },
  { 13, 2, 3, 15 }
}) ➞ false

Notas

N/A