Desafio:
Você receberá uma imagem ASCII de uma pilha de pesos como entrada e deverá gerar o peso combinado da pilha.
Formato:
Existem 5 pesos diferentes, pesando 1, 2, 5, 10, 20 Passerees (ou alguma outra unidade arbitrária).
Os pesos são assim, em ordem crescente:
1: __
|__|
2: ______
|______|
5: ______
| |
|______|
10: ______________
| |
|______________|
20: ____________________
| |
|____________________|
As pesagens serão colocadas simetricamente (como na imagem de exemplo), não necessariamente em uma ordem classificada. As pesagens compartilharão limites, quando aplicável:
Casos de teste:
Você também pode usar todos os pesos únicos como casos de teste.
__
_|__|_
|______|
| |
|______|
1 + 2 + 5 = 8
____________________
| |
|____________________|
| |
|______________|
_|__|_
|______|
| |
|______|
20 + 10 + 1 + 2 + 5 = 38
______
|______|
|______|
|______|
|______|
2 + 2 + 2 + 2 = 8
Regras adicionais:
- Você não pode assumir espaços iniciais adicionais. O maior peso estará todo o caminho para a esquerda.
- Você pode assumir espaços à direita e novas linhas.
- Você pode assumir que haverá no máximo 10 pesos
- Você pode colocar a entrada em um formato opcional, mas não pode substituir os caracteres usados por outra coisa
Isso é código-golfe, portanto o código mais curto em bytes que cada idioma ganha. As explicações são incentivadas como sempre.