Soit m,n,q dividende, diviseur et quotient
Le quotient a au moins 6 chiffres, sinon, ça impliquerait des restes trop grands
Ca permet d'éliminer les solutions triviales où le quotient à 1 chiffres
Si un reste possède 4 chiffres, le quotient suivant doit être 0. Baisser le chiffre suivant du dividende donne un nombre à moins de 6 chiffres, le quotient suivant doit donc être 0. (Ca ne peut arriver qu'avant l'unique chiffre 0 ou sur le dernier reste)
De même, si un reste moins de 3 chiffres, les quotient suivants sont 0. (Ca ne peut donc arriver que sur le dernier reste)
Le quotient a au plus 6 chiffres car si il en avait 7 ou plus, ça impliquerait plusieurs restes ayant moins de 5 chiffres, et donc de nombreux 0).
L'analyse procède comme suit :
soit r1 le dernier reste trouvé
soit qs le quotient suivant
soit r2 le reste supposé
Il faut que r1x = qs*n + r2 commence par . (où x est le chiffre suivant du dividende - celui que l'on descend)
On a donc n = (r1x-r2)/qs
or 10*r1 <= r1x < 10*(r1+1)
Donc (10*r1-r2)/qs <= n < (10 + 10*r1-r2)/qs
On peut donc chercher le quotient par arborescence.
Si r1 = 39625 (pas besoin de tester plus petit, sinon, le quotient suivant serait 0)
qs = 2
r2 = 81594 : (rs ne peut pas être plus grand sinon n serait négatif)
n est donc compris entre (396250 - 81594 )/2 et (396259 - 81594 )/2
donc 157328 <= n <= 157332.
Continuons
r1 devient 81594
Le qs suivant est 5
Si r2 = 29307 :
n est donc compris entre (815940 - 29307 )/5 et (815949 - 29307 )/5
donc 157327<= n <= 157328.
Donc n = 157328 (c'est la bonne branche mais on va d'abord invalider les autres)
Augmenter r2 ferait baisser n.
Revenons au tout début.
Si r1 = 396252
qs = 8
Si r2 = 15945 :
n est donc compris entre (3962520 - 15945 )/8 et (3962529 - 15945 )/8
donc 493322 <= n <= 493323.
Le prochain quotient sera forcément 0, ce qui est impossible
Si r2 = 159452
n est donc compris entre (3962520 - 159452 )/8 et (3962529 - 159452 )/8
donc 475384 <= n <= 475384. (soit n = 475384)
Le quotient suivant ne peut être un 9.
Conclusion, la seule branche possible est celle où n = 157328.
On avait comme début du quotient 2, 2 et 5. En continuant de même, on trouve q
= 225186
2 39625 2 81594 5 29307 1 135751 8 98892 6
et m = 225186*157328 + 44953 = 35428107961
On peut rapidement double check cette solution