Inspiré par /puzzling//q/626
Dans vos aventures, vous arrivez à une série de 7 ponts que vous devez traverser. Sous chaque pont vit un troll. Pour traverser le pont, vous devez d'abord donner au troll un certain nombre de gâteaux en pourcentage du nombre de gâteaux que vous portez. Parce que ce sont de gentils trolls, ils vous rendront un certain nombre de gâteaux.
Au début de chaque journée, le roi des trolls local fixe le pourcentage de taxe sur les gâteaux que chaque voyageur doit payer et le remboursement des gâteaux de trolls - le nombre de gâteaux que chaque troll doit rendre aux voyageurs.
Votre travail consiste à calculer le nombre minimum de gâteaux nécessaires pour passer les 7 ponts de pêche à la traîne pour les conditions données ce jour-là.
Présumer:
- Deux paramètres d'entrée: taxe sur le gâteau en pourcentage (entier de 0 à 100) et remboursement du gâteau troll.
- Personne, pas même les trolls, ne veut un gâteau partiellement mangé par un autre troll. Si vous vous retrouvez avec une fraction de gâteau, le troll l'obtient.
- Si un troll accepte une taxe sur les gâteaux, mais doit ensuite vous rendre tous les gâteaux (avec les mêmes gâteaux ou moins qu'auparavant), il se mettra en colère et vous dévorera, vous et vos gâteaux.
- Chaque troll doit garder au moins un gâteau complet.
- Vous ne pouvez transporter qu'un maximum de 100 gâteaux.
- Vous devez terminer la journée où vous vous trouvez actuellement ou de l'autre côté des 7 ponts.
Défi:
Écrivez un programme complet pour sortir le nombre minimum de gâteaux à voyager pour la journée en cours ou zéro s'il n'est pas possible de voyager en toute sécurité aujourd'hui - vous attendez de voir quels sont les nombres demain.
L'entrée doit être passée en tant que stdin, arguments de ligne de commande ou entrée de fichier.
Le code le plus court (nombre d'octets) gagne.
Exemple:
25% de taxe sur les gâteaux, 2 remboursements de gâteau troll.
commencer avec 19 gâteaux
avant le troll 1: (19 * 0,75) = 14,25
après le troll 1: (14 + 2) = 16
avant le troll 2: (16 * 0,75) = 12
après le troll 2: (12 + 2) = 14
etc.
19 gâteaux -> 16 -> 14 -> 12 -> 11 -> 10 -> 9 -> 8
18 gâteaux -> 15 -> 13 -> 11 -> 10 -> 9 -> 8 -> 8 (règle 3)
Pour 18 gâteaux, le dernier troll n'aurait pas pu garder de gâteaux. Par conséquent, le nombre minimum de gâteaux pour 25% / 2 jours est de 19.
input: 25 2
output: 19
Exemple 2:
90% de taxe sur les gâteaux, 1 remboursement de gâteau troll
100 gâteaux -> 11 -> 2 -> 1 (règle 4)
Le troisième troll n'a pu garder aucun gâteau. Il n'est donc pas possible de voyager sur 90% / 1 jour même à partir du nombre maximum de gâteaux.
input: 90 1
output: 0
Les données
Créez un graphique rapide des valeurs d'entrée et de sortie. J'ai été surpris que ce ne soit pas "lisse" (comme une courbe en cloche ou similaire); il y a plusieurs îles visibles.

Données pour les personnes intéressées. Les colonnes sont divisées en intervalles de 5%, les rangées sont des unités de 1 intervalle de remboursement de gâteau (Excel a fait pivoter l'image). Vous pouvez voir qu'il ne peut y avoir de remboursement supérieur à 28 gâteaux.
27, 17, 13, 14, 15, 18, 20, 24, 53, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
47, 27, 20, 19, 19, 19, 24, 39, 48, 68, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0
67, 37, 28, 24, 23, 28, 27, 29, 50, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
87, 47, 33, 29, 27, 28, 31, 44, 37, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 57, 40, 34, 31, 29, 34, 34, 62, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 67, 48, 39, 35, 38, 37, 49, 57, 76, 92, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 77, 53, 44, 39, 38, 47, 39, 59, 78, 94, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 87, 60, 49, 43, 39, 40, 54, 46, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 97, 68, 54, 47, 48, 44, 44, 71, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 73, 59, 51, 48, 47, 59, 73, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 80, 64, 55, 49, 51, 49, 68, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 88, 69, 59, 58, 54, 64, 70, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 93, 74, 63, 58, 57, 54, 57, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 100, 79, 67, 59, 67, 69, 82, 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 84, 71, 68, 60, 59, 77, 94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 89, 75, 68, 64, 74, 79, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 94, 79, 69, 67, 64, 66, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 99, 83, 78, 71, 79, 91, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 87, 78, 74, 69, 93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 91, 79, 77, 84, 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 95, 88, 87, 74, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 99, 88, 80, 89, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 0, 89, 84, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 0, 98, 87, 94, 97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 0, 98, 91, 84, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 0, 99, 94, 99, 86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 0, 0, 97, 89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
25 2cas de 11 gâteaux, vous donnez au troll 2,75 gâteaux et récupérez 2 pour que le troll garde 0,75 (+ 0,25) et que vous survivez. Dans le 90 1cas des 2 gâteaux, vous donnez le troll 1,8 et récupérez 1 pour que le troll garde 0,8 (+. 2) mais vous mourrez.