Le défi
Générez une représentation sous forme de tableau ou de chaîne du célèbre carré magique de Dürer :
C'est,
16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
Certains propriétés de ce carré, qui peuvent peut-être être exploitées, sont:
- Il contient chaque entier de
1
à16
exactement une fois - La somme de chaque colonne ou ligne, ainsi que la somme de chacune des deux diagonales, est la même. C'est la propriété qui définit un carré magique . La somme est la constante magique du carré.
- De plus, pour ce carré particulier, la somme de chacun des quatre quadrants est également égale à la constante magique, tout comme la somme des quatre carrés centraux et la somme des quatre coins carrés.
Règles
Les Bultins qui génèrent des carrés magiques ne sont pas autorisés (comme Matlab magic
ou MathematicaMagicSquare
). Tout autre module intégré peut être utilisé.
Le code peut être un programme ou une fonction.
Il n'y a aucune entrée.
Les nombres doivent être en base 10. Le format de sortie est flexible comme d'habitude. Certaines possibilités sont:
Un tableau imbriqué (soit une sortie de fonction, soit sa représentation sous forme de chaîne, avec ou sans séparateurs, tout type de parenthèses correspondantes):
[[16, 3, 2, 13], [5, 10, 11, 8], [9, 6, 7, 12], [4, 15, 14, 1]]
Un tableau 2D:
{16, 3, 2, 13; 5, 10, 11, 8; 9, 6, 7, 12; 4, 15, 14, 1}
Un tableau de quatre chaînes ou une chaîne composée de quatre lignes. Les chiffres peuvent être alignés à droite
16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1
ou aligné à gauche
16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1
Une chaîne avec deux séparateurs différents pour la ligne et la colonne, tels que
16,3,2,13|5,10,11,8|9,6,7,12|4,15,14,1
Le format de sortie doit clairement différencier les lignes et les colonnes. Par exemple, il n'est pas autorisé de sortir un tableau plat ou une chaîne avec tous les nombres séparés par des espaces.
Code golf. Victoires les plus courtes.
[15]
, puis en le concaténant à plusieurs reprises avec son inverse avec chaque élément XORed de 13, 3, 8 et 15, respectivement.