E656. Les PGCD donnent la clé
Zig choisit un entier naturelN 62011. Pour le trouver, Puce choisit deux entiers positifsxet y62011 et pose des questions de la forme : quel est le PGCD des entiersx etN+y? Zig lui répond par un entier z.
Trouver les questions qui permettent à Puce de trouverNen moins de douze questions.
Application numérique : pourN=1999, donner la séquence des couples (x,y) choisis par Puce.
Solution de Claude Felloneau
Une stratégie possible
Puce pose successivementnquestions correspondant auxncouples¡ xk,yk
¢, pour 16k6n.
Il choisitxk=210etyk=210−
k−1
X
i=0
zi oùzk est la réponse à lak-ème question (avec la conven- tionz0=0). Il s’arrête lorsquen=10 ou lorsque la réponse estzn=210.
– Si la dernière réponse est différente 210, il trouveN=1023.
– Sinon, après avoir calculé S =
n−1
X
k=1
zk, il pose une dernière question correspondant au couple¡
xn+1,yn+1¢
choisi de la façon suivante :
• xn+1=Setyn+1=0 siSn’est pas une puissance de 2.
Si la réponse est égale àS,il trouve alorsN =S, sinonN=1024+S.
• xn+1=S+5 etyn+1=5 siSest une puissance de 2.
Si la réponse est égale àS+5, alorsN=S, sinonN=1024+S. Cela fait doncn+1 questions donc au maximum 11 questions !
Application numérique : Pour découvrir 1999, il choisit donc les couples (1024, 0), (1024, 1023), (1024, 1021), (1024, 1017), (1024, 1009), (1024, 945), (1024, 817), (1024, 561), (1024, 49), (975, 0).
Preuve
En écrivantNen base 2, on en déduit l’existence d’entiers naturels non nulsα1,α2, ...,αptels queα1<α2<...<αpetN=
p
X
k=1
2αk. CommeN<2047=211−1, on ap610.
On a alors :
z1=PGCD(x1,N+y1)=PGCD(210,N)=2α1,
z2=PGCD(x2,N+y2)=PGCD(210,N+210−z1)=PGCD(210,
p
X
k=2
2αk)=2α2, ...
zi=PGCD(xi,N+yi)=PGCD(210,N+210−z1−z2−...−zi−1)=PGCD(210,
p
X
k=i
2αk)=2αi, ...
zp=PGCD(xp,N+yp)=PGCD(210,N+210−z1−z2−...−zp−1)=PGCD(210, 2αp)=2αp, Sizp=210alorsn=psinon
zp+1=PGCD(xp+1,N+yp+1)=PGCD(210,N+210−z1−z2−...−zp)=PGCD(210, 210)=210, doncn=p+1.
– Si la dernière réponse est différente 1024, alorsp=10 etz106=210,α9<10, doncαk=k pour 06k69, etN=
10
X
k=1
2αk=
9
X
k=0
2k=210−1=1023.
– Sinon,zn=1024. On a alorsN=SouN=S+1024 avecS=
n−1
X
k=1
zk. En effet :
– Sin=palorsS=
n−1
X
k=1
zk=
p−1
X
k=1
2αk =N−2αp=N−zn=N−210. – Sin=p+1 alorsS=
n−1
X
k=1
zk=
p
X
k=1
2αk=N. De plus :
– SiSn’est pas une puissance de 2, on posexn+1=Setyn+1=0.
On a alorszn+1=PGCD(S,N).
• SiN =S+1024, alorszn+1=PGCD(S, 1024)6=ScarSne divise pas 1024 puisqueS n’est pas une puissance de 2. Ainsi, sizn+1=S, alorsN6=S+1024 doncN=S.
• SiN=S, alorszn+1=S. Ainsi, sizn+16=S, alorsN6=SdoncN=S+1024.
– SiS=2aest une puissance de 2, on posexn+1=S+5 etyn+1=5.
On a alorszn+1=PGCD(S+5,N+5).
• SiN=S, alorszn+1=S+5. Ainsi, sizn+16=S+5, alorsN6=SdoncN=S+1024.
• SiN=S+1024 etzn+1=PGCD(S+5, 1024)=S+5 alorsS+5 divise 1024 doncS+5= 2b avecb entier naturel. On a alors 5=2b−2a =2a¡
2b−a−1¢
. On en déduita=0 donc 2b=6. Ce qui est absurde. Ainsi, sizn+1=S+5, alorsN6=S+1024 doncN=S.
2