Cansado de sempre se perguntar quantos Pokémon você precisa capturar para obter essas evoluções de alto nível? Maravilha não mais! Agora você escreverá um programa ou função completa para calculá-lo para você!
O desafio:
Como entrada, seu programa receberá uma lista dos custos em doces para evoluir um Pokémon para o próximo nível. (Esta lista pode ser separada por qualquer delimitador de sua escolha ou como argumentos de função). Seu programa retornará ou imprimirá o número de Pokémon que devem ser capturados, incluindo o que será desenvolvido, para evoluir em todos os níveis fornecidos.
Como você calcula isso? Assim:
1. Adicione todos os custos com doces: 12 + 50 = 62
2. Subtraia 3 doces do total, sendo esse o Pokémon que você mantém para evoluir: 62 - 3 = 59
3. Divida esse número por 4 (3 para capturar, 1 por entregá-lo ao Professor), sempre considerando o ceil()
resultado: ceil(59/4) = 15
4. Finalmente, adicione 1 a este total para obter o número total de Pokémon que você deve capturar, 16!
Exemplo Input -> Output
:
[4] -> 2
[50] -> 13
[12, 50] -> 16
[25, 100] -> 32
[19, 35, 5, 200] -> 65
Ganhando:
O aplicativo já ocupou a maior parte do espaço no seu telefone, portanto, seu programa precisa ser o mais curto possível. O programa completo ou função com a menor contagem de bytes será aceito em duas semanas! (com quaisquer laços sendo resolvidos pela entrada mais antiga enviada!)
floor(Sum(L)/4)+1
? A fórmula atual não funciona para somas divisíveis por 4. Por exemplo [400]
, retornaria 100, quando, na realidade, precisa ser 101 para que o extra evolua.