A soma manual de faces de um cubo Cubically é entediante e demorada, como escrever código no próprio Cubically.
No cubificador Mais eficiente , pedi para você traduzir o ASCII para o código-fonte Cubically. Uma das respostas lá usa uma sequência de inicialização do cubo e modifica o cubo resultante com base nas somas do cubo pré-inicializado. Este método tem sido usado em muitos programas relacionados ao Cubically desde então. Ao testar uma nova sequência de inicialização, é necessário adicionar todos os valores em todas as faces, o que geralmente leva dois ou três minutos.
Sua tarefa é automatizar esse processo para nós!
Você receberá duas entradas, um inteiro n
e uma string c
. Eles podem ser lidos a partir de argumentos de linha de comando, argumentos de função, entrada padrão, um arquivo ou qualquer combinação desses. c
será um cubo de tamanho cúbico de memória,n
conforme impresso pelo intérprete.
O intérprete Cubically despeja seu cubo no STDERR após o término do programa, formatado de maneira agradável para visualização simples. Execute um programa vazio no interpretador Cubically e abra a seção de depuração para ver o despejo de cubo de um cubo inicializado. Adicione um argumento 4
para ver um 4x4x4 ou 5
5x5x5 etc.
Se n
for 3, c
seguirá este formato (os números inteiros serão variáveis):
000
000
000
111222333444
111222333444
111222333444
555
555
555
Espaços, novas linhas e tudo. Se n
for 4, c
ficará assim (também com números inteiros variáveis):
0000
0000
0000
0000
1111222233334444
1111222233334444
1111222233334444
1111222233334444
5555
5555
5555
5555
Et cetera.
Seu programa produzirá seis números inteiros. O primeiro número inteiro será a soma de todos os números na face superior.
000
000 top face
000
111222333444 left, front, right, and back faces, respectively
111222333444
111222333444
555
555 bottom face
555
O segundo número inteiro será a soma da face esquerda, o terceiro a frente, o quarto a direita, o quinto atrás e o sexto inferior.
Então, se n
foi 3 e c
foi isso:
242
202
242
000131555313
010121535343
000131555313
424
454
424
Seu programa seria exibido 20 1 14 43 24 33
.
Regras adicionais:
- Os números inteiros de saída devem ser delimitados por caracteres não inteiros. Você também pode optar por retornar uma matriz.
- Você pode assumir que a entrada está correta -
n
é um número inteiro ec
é um cubo da saída de depuração do Cubically . Portanto, sen
foi3.0
ec
foifoo bar
, seu programa pode ser interrompido e ainda ser válido. - Seu programa precisa apenas trabalhar para
n > 1
en < 1260
. Ele pode (tentar) lidar com tamanhos maiores ou menores do cubo, mas não é necessário.
Isso é código-golfe , então o código mais curto vence! Se precisar de ajuda, não hesite em perguntar na sala de bate-papo do Cubically .
n
espaços após cada linha, não. Eles não estão incluídos no despejo.