Inspirado por Exibir uma cadeia de pequenas montanhas com um número ímpar no topo! por @sygmei .
Por que ter uma cadeia de montanhas quando você pode ter uma maciça?
Faça um programa que pegue um número de entrada e imprima uma montanha com cada número ímpar até o número de entrada.
(Onde "sudoeste" significa directly below and to the left
e "sudeste" significa directly below and to the right
)
Todo número terá um /
sudoeste a oeste e um \
sudeste. Começa 1
no topo e o próximo número vai para o sudoeste de um /
ou para o sudeste de a \
. O próximo número entrará na linha mais próxima do topo e da esquerda, o mais possível.
Para um número de vários dígitos, apenas o primeiro dígito precisa estar no lugar certo com os outros dígitos logo após e somente o primeiro dígito deve ter \
e /
sair dele.
A montanha até 1 ou 2 é apenas:
1
/ \
Uma montanha de até 3 ou 4 é apenas:
1
/ \
3
/ \
Para 25 ou 26:
1
/ \
3 5
/ \ / \
7 9 11
/ \ / \ / \
13 15 17 19
/ \ / \ / \ / \
21 23 25
/ \ / \ / \
Últimas duas linhas em que a entrada é 121:
111 113 115 117 119 121
/ \ / \ / \ / \ / \ / \
E as duas últimas linhas em que a entrada é 1019:
993 995 997 999 1001100310051007100910111013101510171019
/ \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \
Você pode assumir que a entrada será maior que 0 e menor que 10001 (exclusivo).
Os espaços à direita estão OK, e os espaços à frente extras estão bem, desde que haja o mesmo em todas as linhas.
Isso é código-golfe , então o programa mais curto em bytes vence.
Uma resposta simples para isso pode ser encontrada on-line aqui (em Python no repl.it) se você precisar de mais casos de teste.