O desafio
Escreva um programa que use um número N como entrada e produza o estágio de vida ou morte em que uma árvore está atualmente. N sempre estará entre 0 e 10.
As etapas da vida e da morte
Vida: Para desenhar um estágio da vida, simplesmente desenhe uma base de tamanho N , composta por
^
caracteres, mova para cima e subtraia 2 de N , se o resultado for maior que 0, e desenhe uma linha de^
caracteres novamente, novamente com o tamanho da nova N . Repita enquanto N é maior que 0. Para finalizar, coloque um único|
caractere se o valor inicial de N for ímpar ou dois||
caracteres se for par.
Exemplo:N = 5
^ ^^^ ^^^^^ |
Observe que, se N = 0, apenas a haste será desenhada, sem as folhas (
^
) nelas.Death: É aproximadamente o mesmo que Life , exceto que a base é 10-N , você usa em
M
vez de^
e adiciona 2 a N e redesenha as linhas com o mesmo procedimento acima, mas desta vez você adiciona 2 a N enquanto é menor ou igual a 10.
Exemplo:N = 3
M MMM MMMMM MMMMMMM |
O objetivo
O seu programa tem que ser executado em 2 línguas diferentes, tanto tem que dar uma entrada de N . O primeiro idioma deve produzir o estágio de vida de uma árvore de acordo com N , o segundo idioma deve gerar o estágio de morte .
Regras
- Este é o code-golf , o código mais curto em bytes que atende a todos os requisitos.
- O código deve ser executado em 2 idiomas diferentes. Sim, Python 2 e Python 3 são idiomas diferentes .
- As brechas padrão são proibidas.
- Novas linhas ou espaços à direita são permitidos.
Casos de teste
Entrada: N = 1
Primeira língua (vida):
^
|
Segunda língua (morte):
M
MMM
MMMMM
MMMMMMM
MMMMMMMMM
|
Entrada: N = 10
Primeira língua (vida):
^^
^^^^
^^^^^^
^^^^^^^^
^^^^^^^^^^
||
Segunda língua (morte):
||
Boa sorte na codificação!
Respostas:
Dyalog APL / SOGL,
70656362 bytesInterpretado na codificação Dyalog APL clássica : - life: (contém não imprimíveis), espera
⎕IO←1
TryAPL aqui!
Interpretado na codificação de SOGLs - morte:
Experimente aqui!
Explicação:
Isso demorou demais. Dicas de golfe para a parte APL são bem-vindas, tudo deve ser aplicado desde que não mude nada antes
ûP'
Você pode carregar o arquivo (após a reversão
xxd
) no SOGL , selecionando o arquivo naBrowse...
caixa de diálogo e clicando emload SOGL codepage encoded file
.fonte
Python 2 e Python 3 ,
119110109 bytesExperimente online! (Python 2, vida)
Experimente online! (Python 3, morte)
fonte
b=int(input())
eif n:b=10-b
salva um byte.Python 2 / Python 3 , 121 bytes
Experimente online! (Python 2)
Experimente online! (Python 3)
fonte
Python 3 / Python 2 , 128 bytes
Experimente online! (Python 3)
Experimente online! (Python 2)
fonte
C (gcc) / Python 2 , 308 bytes
Experimente online!
Python 2 / C (gcc) , 308 bytes
Experimente online!
fonte