La sfida
Stampa una matrice o una rappresentazione in formato stringa del famoso quadrato magico di Dürer :
questo è,
16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
Alcune proprietà di questa piazza, che possono forse essere sfruttate, sono:
- Contiene ogni numero intero da
1
a16
esattamente una volta - La somma di ciascuna colonna o riga, così come la somma di ciascuna delle due diagonali, è la stessa. Questa è la proprietà che definisce un quadrato magico . La somma è la costante magica del quadrato.
- Inoltre, per questo particolare quadrato, la somma di ciascuno dei quattro quadranti equivale anche alla costante magica, così come la somma del centro quattro quadrati e la somma dell'angolo quattro quadrati.
Regole
I bultin che generano quadrati magici non sono ammessi (come Matlab magic
o Mathematica MagicSquare
). È possibile utilizzare qualsiasi altro built-in.
Il codice può essere un programma o una funzione.
Non ci sono input.
I numeri devono essere nella base 10. Il formato di output è flessibile come al solito. Alcune possibilità sono:
Un array nidificato (output della funzione o rappresentazione della stringa, con o senza separatori, qualsiasi tipo di parentesi corrispondenti):
[[16, 3, 2, 13], [5, 10, 11, 8], [9, 6, 7, 12], [4, 15, 14, 1]]
Un array 2D:
{16, 3, 2, 13; 5, 10, 11, 8; 9, 6, 7, 12; 4, 15, 14, 1}
Un array di quattro stringhe o una stringa composta da quattro righe. I numeri possono essere allineati a destra
16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1
o allineato a sinistra
16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1
Una stringa con due diversi separatori per riga e colonna, ad esempio
16,3,2,13|5,10,11,8|9,6,7,12|4,15,14,1
Il formato di output dovrebbe differenziare chiaramente righe e colonne. Ad esempio, non è consentito produrre un array piatto o una stringa con tutti i numeri separati da spazi.
Codice golf. Vittorie più brevi.
[15]
, quindi concatenandolo ripetutamente con il suo rovescio con ogni elemento XORed rispettivamente di 13, 3, 8 e 15.