(relacionado / inspirado por: Desenhe uma formação de boliche )
Um passatempo divertido nos meses de inverno aqui é jogar boliche de boneco de neve, usando uma bola grande (como uma bola de basquete) e pequenas figuras de boneco de neve. Vamos recriar isso em ASCII.
Cada boneco de neve consiste no seguinte:
(.,.)
( : )
Aqui está o alinhamento dos dez "pinos" do boneco de neve
(.,.) (.,.) (.,.) (.,.)
( : ) ( : ) ( : ) ( : )
(.,.) (.,.) (.,.)
( : ) ( : ) ( : )
(.,.) (.,.)
( : ) ( : )
(.,.)
( : )
Estes "pins" são rotulados a partir 1
de 10
como
7 8 9 10
4 5 6
2 3
1
Até agora, tão padrão. No entanto, ao contrário do boliche normal, os pinos do boneco de neve são apenas achatados e não totalmente removidos. Isso é feito por alguém que precisa achatar manualmente a neve dos pinos atingidos. Um boneco de neve achatado é representado por _____
(cinco sublinhados), com espaço em branco acima. Aqui está um exemplo com os 1 3 5 6 9 10
pinos achatados (o que significa que apenas os 2 4 7 8
pinos permanecem):
(.,.) (.,.)
( : ) ( : ) _____ _____
(.,.)
( : ) _____ _____
(.,.)
( : ) _____
_____
Entrada
- Uma lista de números inteiros de
1
para10
em qualquer formato conveniente representando quais pinos foram atingidos e, portanto, precisam ser achatados. - Cada número aparecerá apenas no máximo uma vez, e os números podem estar em qualquer ordem (ordenada, não ordenada, ordenada descendente) - sua escolha, independentemente do que torne seu código mais eficiente.
- A entrada é garantida para ter pelo menos um número inteiro.
Saída
A representação artística ASCII resultante dos pinos do boneco de neve, com os pinos corretos achatados.
Regras
- Novas linhas à esquerda ou à direita ou espaços em branco são opcionais, desde que os próprios caracteres estejam alinhados corretamente.
- Um programa completo ou uma função são aceitáveis. Se uma função, você pode retornar a saída em vez de imprimi-la.
- Se possível, inclua um link para um ambiente de teste on-line para que as pessoas possam experimentar seu código!
- As brechas padrão são proibidas.
- Isso é código-golfe, portanto todas as regras usuais de golfe se aplicam e o código mais curto (em bytes) vence.
Exemplos
1 3 5 6 9 10
(.,.) (.,.)
( : ) ( : ) _____ _____
(.,.)
( : ) _____ _____
(.,.)
( : ) _____
_____
1 2 3
(.,.) (.,.) (.,.) (.,.)
( : ) ( : ) ( : ) ( : )
(.,.) (.,.) (.,.)
( : ) ( : ) ( : )
_____ _____
_____
1 2 3 4 5 6 8 9 10
(.,.)
( : ) _____ _____ _____
_____ _____ _____
_____ _____
_____