Fatigué de toujours vous demander combien de Pokémon de plus vous devez attraper pour obtenir ces évolutions de haut niveau? Je ne me demande plus! Vous allez maintenant écrire un programme ou une fonction complète pour le calculer pour vous!
Le défi:
En entrée, votre programme recevra une liste des coûts en bonbons pour faire évoluer un Pokémon au niveau suivant. (Cette liste peut être séparée par n'importe quel délimiteur de votre choix ou comme arguments de fonction). Votre programme retournera ou imprimera ensuite le nombre de Pokémon à attraper, y compris celui qui sera évolué, pour évoluer à travers tous les niveaux donnés.
Comment calculez-vous cela? Comme ceci:
1. Additionnez tous les coûts des bonbons: 12 + 50 = 62
2. Soustrayez 3 bonbons du total, celui-ci étant du Pokémon que vous gardez pour évoluer: 62 - 3 = 59
3. Divisez ce nombre par 4 (3 pour attraper, 1 pour le donner à la Professeur), en prenant toujours ceil()
le résultat: ceil(59/4) = 15
4. Enfin, ajoutez 1 à ce total pour obtenir le nombre total de Pokémon que vous devez attraper, 16!
Exemple Input -> Output
:
[4] -> 2
[50] -> 13
[12, 50] -> 16
[25, 100] -> 32
[19, 35, 5, 200] -> 65
Gagnant:
L'application a déjà occupé la majeure partie de l'espace sur votre téléphone, votre programme doit donc être aussi court que possible. Le programme ou la fonction complète avec le plus petit nombre d'octets sera accepté dans deux semaines! (tous les liens étant réglés par la première soumission soumise!)
floor(Sum(L)/4)+1
? La formule actuelle ne fonctionne pas pour les sommes divisibles par 4. Par exemple, [400]
elle renverrait 100, alors qu'en réalité, elle doit être de 101 pour que l'extra évolue.