Hay muchos cuadrados mágicos, pero solo hay un hexágono mágico no trivial, como explicó el Dr. James Grime , que es el siguiente:
18 17 3
11 1 7 19
9 6 5 2 16
14 8 4 12
15 13 10
Como se hace en Hexagony, esto se escribe más fácilmente como una sola línea, simplemente leyéndola fila por fila:
18 17 3 11 1 7 19 9 6 5 2 16 14 8 4 12 15 13 10
Por supuesto, hay doce representaciones de este hexágono mágico en total, si cuenta las rotaciones y los reflejos. Por ejemplo, una rotación de 1/6 en sentido horario del hexágono anterior daría como resultado
9 11 18 14 6 1 17 15 8 5 7 3 13 4 2 19 10 12 16
@Okx pidió enumerar las variantes restantes. Las listas restantes son:
15 14 9 13 8 6 11 10 4 5 1 18 12 2 7 17 16 19 3
3 17 18 19 7 1 11 16 2 5 6 9 12 4 8 14 10 13 15
18 11 9 17 1 6 14 3 7 5 8 15 19 2 4 13 16 12 10
9 14 15 11 6 8 13 18 1 5 4 10 17 7 2 12 3 19 16
además de todas las listas mencionadas invertidas.
Desafío
Escriba un programa que muestre el hexágono mágico como una lista. Puede elegir cualquiera de los 12 reflejos / rotaciones del hexágono.
Agregue algunas palabras sobre cómo funciona su solución.
Respuestas:
Octava, 24 bytes
Pruébalo en línea!
fuente
Jalea , 11 bytes
Un enlace niládico que devuelve la lista de la orientación dada refleja izquierda-derecha.
Pruébalo en línea!
¿Cómo?
Justo el tipo de cosas por las que hice
Œ?
fuente
Pyth, 15 bytes
(Los caracteres de control se reemplazan por
\x06
y\x11
para su comodidad de visualización).Pruébalo en línea
Cómo funciona
fuente
05AB1E , 14 bytes
Ambas soluciones generan la lista.
[3,17,18,19,7,1,11,16,2,5,6,9,12,4,8,14,10,13,15]
Genera una lista de todas las permutaciones (ordenadas) del rango
[1...19]
e índices en esa lista con un número base 255 comprimido de base 10.O 15 bytes ejecutables en línea
Descomprime una cadena base 255 en un número base 10 y la convierte en una lista de 20 dígitos base.
Pruébalo en línea!
fuente
SOGL , 15 bytes
Explicación:
fuente
Jalea , 21 bytes
Realmente quiero comprimir ese gran número, pero no estoy seguro de cómo.
Pruébalo en línea!
fuente
18473955480703453
es 1 bytes más corto.ḃ250
e indexar en la página de códigos (que ahora es más fácil ya que tiene un átomo niládicoØJ
).APL, 24 bytes
Pruébalo en línea!
¿Cómo?
fuente
JavaScript (ES6), 49 bytes
Mostrar fragmento de código
fuente
Mathematica, 37 bytes
Explicación (eso puede ser obvio ya que Mathematica no es un lenguaje de codegolf, pero de acuerdo con el requisito de OP):
Salida:
fuente
Japt , 27 bytes
Inspirado en la solución de rahnema1.
Pruébalo en línea
fuente