Contexte
Il y a une énigme commune qui ressemble à ceci:
Un escargot est au fond d'un puits de 30 pieds. Chaque jour, l'escargot est capable de grimper jusqu'à 3 pieds. La nuit, quand ils dorment, ils redescendent de deux pieds. Combien de jours faut-il pour que l'escargot sorte du puits?
La réponse intuitive est
30 jours, parce que l'escargot grimpe à 1 pied par jour pendant 30 jours pour atteindre le sommet,
mais en réalité la réponse est
28 jours, car une fois que l'escargot aura atteint 27 pieds de hauteur (après 27 jours), il ne lui restera plus qu'à gravir les 3 pieds restants jusqu'au sommet le 28e jour.
Défi
Ce défi généralise cette énigme. Avec trois nombres entiers positifs en entrée, représentant la hauteur totale, la hauteur de montée et la hauteur de chute, donne le nombre de jours nécessaires à la sortie du puits.
Si l'escargot ne peut pas sortir du puits, vous pouvez renvoyer 0, renvoyer une valeur de fausseté ou renvoyer une exception. Vous pouvez également écrire du code qui s’arrêtera si et seulement si une solution existe.
Si vous le souhaitez, vous pouvez prendre la hauteur de chute comme un entier négatif.
Cas de test
(30, 3, 2) -> 28 (84, 17, 15) -> 35 (79, 15, 9) -> 12 (29, 17, 4) -> 2 (13, 18, 8) -> 1 (5, 5, 10) -> 1 (7, 7, 7) -> 1 (69, 3, 8) -> Aucun (81, 14, 14) -> Aucun
Notation
C'est du code-golf , donc la réponse la plus courte dans chaque langue est gagnante.