Vous allez participer à un gameshow. L'un des défis fonctionne comme suit:
- La première salle contient un grand nombre de balles identiques.
- La deuxième salle contient une série de chutes, chacune dotée d'un capteur qui compte le nombre de balles qui y ont été placées. Une balle placée dans un parachute ne peut alors pas être récupérée.
- Chaque chute se déclenchera après qu'un certain nombre de balles (son nombre de déclencheurs ) y auront été placées. Quand il se déclenche, il fait clignoter des lumières, fait du bruit et ne laisse aucun doute qu'il s'est déclenché.
- Vous devez déclencher des
N
chutes pour continuer vers le prochain défi. - Vous connaissez le nombre de déclencheurs, mais pas la correspondance entre le nombre et la goulotte.
- Vous avez une occasion de prendre des balles de la première salle dans la seconde. Une fois que vous avez mis une balle dans une goulotte, vous ne pouvez plus y retourner pour plus de balles.
- Chaque balle que vous prenez déduit de l'argent du jackpot.
Évidemment, vous voulez vous assurer de réussir le défi, mais vous voulez minimiser la perte d'argent du jackpot. Écrivez un programme, une fonction, un verbe, etc. pour vous dire combien de balles vous avez besoin.
Exemple
Supposons que le nombre de déclencheurs soit 2, 4 et 10 et que vous devez déclencher 2 goulottes pour passer. Il y a une stratégie pour passer avec 10 balles: placez jusqu'à 4 balles dans la première chute, jusqu'à 4 balles dans la deuxième chute, et jusqu'à 4 balles dans la troisième chute. Étant donné que l'un des trois chutes se déclenchera après seulement 2 balles, vous n'utilisez qu'un total de 10. Il n'y a pas de stratégie qui est garantie de fonctionner avec moins de 10, donc c'est la sortie correcte.
Contribution
L'entrée se compose d'un tableau de nombres de déclencheurs entiers et d'un entier donnant le nombre de goulottes à déclencher. Vous pouvez prendre les deux entrées dans l'un ou l'autre ordre et, si nécessaire, vous pouvez prendre une troisième entrée avec la longueur du tableau.
Vous pouvez supposer que toutes les entrées sont supérieures à zéro et que le nombre de chutes à déclencher ne dépasse pas le nombre de chutes.
Vous pouvez également supposer que les décomptes sont triés (croissant ou décroissant), tant que vous le dites clairement dans votre réponse.
Sortie
La sortie doit être un seul entier, donnant le nombre de billes requis par la stratégie optimale.
Cas de test
Format: N counts solution
1 [2 4 10] 6
2 [2 4 10] 10
3 [2 4 10] 16
1 [3 5 5 5 5 5 5 5 5 5] 5
2 [1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 8 11] 8
2 [1 2 6 6 6 6 6 6 6 10] 16
2 [1 2 3 3 4 4 6 6 6 11] 17
3 [1 2 3 4 5 5 6] 16
3 [2 4 7 7 7 7 7 7 7] 21
5 [1 2 2 3 3 3 3 3 5 9 9 11] 27
2 [5 15 15] 25
1 [4 5 15] 10
3 [1 4 4 4] 10
2 [1 3 4] 6
2 [1 3 3 8] 8