Existem muitos quadrados mágicos, mas há apenas um hexágono mágico não trivial, como explicou o Dr. James Grime , que é o seguinte:
18 17 3
11 1 7 19
9 6 5 2 16
14 8 4 12
15 13 10
Como é feito no Hexagony, é mais fácil escrever em apenas uma linha, lendo-a linha por linha:
18 17 3 11 1 7 19 9 6 5 2 16 14 8 4 12 15 13 10
É claro que existem doze representações dessa lista desse hexágono mágico no total, se você contar rotações e reflexões. Por exemplo, uma rotação 1/6 no sentido horário do hexágono acima resultaria em
9 11 18 14 6 1 17 15 8 5 7 3 13 4 2 19 10 12 16
A @Okx pediu para listar as variantes restantes. As listas restantes são:
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
além de todas as listas mencionadas revertidas.
Desafio
Escreva um programa que produz o hexágono mágico como uma lista. Você pode escolher qualquer uma das 12 reflexões / rotações do hexágono.
Adicione algumas palavras sobre como sua solução funciona.
Respostas:
Oitava, 24 bytes
Experimente online!
fonte
Gelatina , 11 bytes
Um link niládico retornando a lista da orientação especificada refletida esquerda-direita.
Experimente online!
Quão?
Apenas o tipo de coisa para a qual eu fiz
Œ?
fonte
Pitão, 15 bytes
(Caracteres de controle substituídos por
\x06
e\x11
para sua conveniência de visualização.)Experimente online
Como funciona
fonte
05AB1E , 14 bytes
Ambas as soluções geram a lista
[3,17,18,19,7,1,11,16,2,5,6,9,12,4,8,14,10,13,15]
Gera uma lista de todas as permutações (classificadas) do intervalo
[1...19]
e os índices nessa lista com um número de base 10 compactado da base 255.Ou 15 bytes executáveis on-line
Descomprime uma seqüência de caracteres 255 base em um número base 10 e converte em uma lista de 20 dígitos base.
Experimente online!
fonte
SOGL , 15 bytes
Explicação:
fonte
Geléia , 21 bytes
Eu realmente quero comprimir esse grande número, mas não sei como.
Experimente online!
fonte
18473955480703453
é 1 bytes mais curto.ḃ250
e indexar na página de códigos (que agora é mais fácil, pois existe um átomo niládico para elaØJ
).APL, 24 bytes
Experimente online!
Quão?
fonte
JavaScript (ES6), 49 bytes
Mostrar snippet de código
fonte
Mathematica, 37 bytes
Explicação (que já pode ser óbvio, já que o Mathematica não é uma linguagem codegolf, mas de acordo com o requisito de OP):
Resultado:
fonte
Japonês , 27 bytes
Inspirado pela solução de rahnema1.
Experimente online
fonte