Introdução:
Sou um colecionador de quebra-cabeças sinuosos. Aqui você pode ver minha coleção atual de ± 300 quebra-cabeças.
Acho que todo mundo conhece o Cubo de Rubik regular (cubo 3x3x3), que é um cubo NxNxN . Também existem cuboides (quebra-cabeças em forma de bloco), que vêm em diferentes formas, talvez melhor explicados por SuperAntionioVivaldi aqui :
- Cuboides de dominó regulares (como 2x2x3 ; 2x3x3 ; 3x3x4 ; etc.) - Eles vêm na forma de NxNx (N + O) ou Nx (N + O) x (N + O) , que possuem duas dimensões ímpares e uma par, ou dois pares e um ímpar.
- Cuboides de cambiaformas (como 2x2x4 ; 3x3x5; 3x3x9 ; 4x4x6 ; etc.) - Eles vêm na forma de NxNx (N + P) , que, como o nome sugere, muda de forma (em todas as direções). Todas as três dimensões são ímpares ou pares.
- Cuboides de disquete (como 1x3x3 ; 2x4x4 ; etc.) - Eles vêm na forma de Nx (N + P) x (N + P) , que são quase os mesmos que os cambiaformas, mas com as chamadas paridades de disquete.
- Cuboides de tijolo (como o 2x3x4 ; 3x4x5 ; 2x3x5; etc.) - Eles vêm na forma de Nx (N + O) x (N + P), que, assim como os cuboides regulares do dominó, têm duas dimensões ímpares e um par, ou dois pares e um ímpar; mas não tem as mesmas dimensões.
- Os cambiaformas finais (como 2x4x6 ; 3x5x7; 2x4x10; etc.) - Eles vêm na forma de Nx (N + O) x (N + R) e mudam de forma em qualquer direção. Todas as três dimensões são ímpares ou pares; mas não tem as mesmas dimensões.
Desafio:
Entrada:
Um número inteiro positivo n com a seguinte restrição: 8 <= n <= 125.
n pode ser decodificado exclusivamente como o produto de três valores (as dimensões), dos quais cada um está entre 2 e 5, inclusive.
A razão pela qual eu o restringi a 2-5 é evitar entradas duplicadas (como 1x2x4 = 8
e 2x2x2 = 8
), mesmo que haja muitos cuboides de ordem inferior / superior por aí. Isso também significa que não há casos de teste para os Ultimate Shapeshifters.
Casos de saída / teste:
Estes são todos os casos que seu programa / função deve suportar, variando de comprimentos de borda 2 a 5 em todas as configurações tridimensionais possíveis:
Input Cuboid/Cube Type/Output
8 2x2x2 Cube
12 2x2x3 Regular Domino Cuboid
16 2x2x4 Shapeshifter Cuboid
20 2x2x5 Regular Domino Cuboid
18 2x3x3 Regular Domino Cuboid
24 2x3x4 Brick Cuboid
30 2x3x5 Brick Cuboid
32 2x4x4 Floppy Cuboid
40 2x4x5 Brick Cuboid
50 2x5x5 Regular Domino Cuboid
27 3x3x3 Cube
36 3x3x4 Regular Domino Cuboid
45 3x3x5 Shapeshifter Cuboid
48 3x4x4 Regular Domino Cuboid
60 3x4x5 Brick Cuboid
75 3x5x5 Floppy Cuboid
64 4x4x4 Cube
80 4x4x5 Regular Domino Cuboid
100 4x5x5 Regular Domino Cuboid
125 5x5x5 Cube
Regras do desafio:
- Qualquer entrada não cubo / não cubóide dentro da faixa 8-125 deve resultar em 'nenhum' como saída.
- O formato de saída é sua própria escolha. Eu acho que o mais razoável é números inteiros, como
0
= 'none';1
= Cubo;2
= Cubo dominó regular;3
= Metamorfo Cubóide;4
= Cubóide de disquete;5
= Cubóide de tijolo. Qualquer outro formato de saída também é bom, desde que você especifique qual você usou.
Regras gerais:
- Isso é código-golfe , então a resposta mais curta em bytes vence.
Não permita que idiomas com código de golfe o desencorajem a postar respostas com idiomas que não sejam codegolf. Tente encontrar uma resposta o mais curta possível para 'qualquer' linguagem de programação. - As regras padrão se aplicam à sua resposta, para que você possa usar STDIN / STDOUT, funções / método com os parâmetros adequados, programas completos. Sua chamada.
- As brechas padrão são proibidas. ( NOTA: Como não sei se existe uma fórmula inteligente para a conversão de entrada para saída, é permitido codificar as respostas com base na entrada. )
- Se possível, adicione um link com um teste para o seu código.
- Além disso, adicione uma explicação, se necessário.
24
), então eu não sei o que você quer classificar sobre isso?