par shadoko » 26 Fév 2005, 23:10
D'abord, il faut bien réfléchir à l'information dont dispose une personne au moment où elle doit parler:
-elle a entendu ce qu'on dit tous ceux qui sont derrière elle.
-elle voit tous ceux qui sont devant elle.
Donc en fait, elle sait pas mal de choses. S'il y avait une sorte de chose globale dont elle puisse déduire sa couleur en connaissant toutes les autres, ce serait facile... mais cette chose existe.
Si je vous donne plein de nombres, que vous les connaissez tous sauf 1, et que je vous donne la somme, c'est pas difficile de trouver celui qui manque. Il suffit de tous les soustraire à la somme, et c'est gagné. Et bien, c'est de ça dont on se sert pour l'énigme...
L'idée, c'est d'associer à chaque couleur un nombre (0, 1 et 2). Disons
vert=0
jaune=1
rose=2
Donc, maintenant, au lieu de dire: les prisonniers ont une couleur sur la tête, on fait comme si ils avaient un nombre sur la tête.
Le premier prisonnier à parler donne alors la somme de tous les nombres qu'il voit devant lui (donc des 99 nombres devant lui), avec notre nouvelle manière de compter. Il dit donc 0, 1 ou 2, selon que cette somme est 0, 1 ou 2. Tous les prisonniers ont bien entendu ce nombre, et le retiennent. On va l'appeler TOTAL pour se rappeler.
Le deuxième prisonnier voit tous les nombres devant lui (il y en a 98), il peut les soustraire au nombre TOTAL qu'il vient d'entendre. Ca lui donne donc son nombre. Il le dit.
Le troisième prisonnier voit tous les nombres qu'il y a devant lui (il y en a 97), il peut les soustraire au nombre TOTAL. Puis, il soustrait encore au résultat le nombre qu'à dit le deuxième. Il obtient encore son nombre. Il le dit.
Etc... chaque prisonnier soustrait de TOTAL tous les nombres qu'il voit devant lui, et tous ceux qu'il a déjà entendu à partir du deuxième qui a parlé.
Pour vérifier qu'on a compris, on peut se demander que diraient les prisonniers si les nombres sur leurs têtes étaient (en partant du dernier, donc le premier qui parle), et en supposant qu'ils ne sont que 5 prisonniers (ça ne change rien):
2,1,1,0,2
J'écris ce que prononcent dans l'ordre les prisonnier, et le calcul qu'ils font:
dernier:
1+1+0+2=1 donc TOTAL=1, et je dis "un" (et malheureusement, je suis mort).
ensuite:
TOTAL-(ce que je vois)=TOTAL-1-0-2=1-1-0-2=1, et je dis "un" (et je suis sauvé).
ensuite:
TOTAL-(ce que je vois)-(ce que j'ai entendu)=TOTAL -0-2 -1 =1-0-2-1=1,
je dis "un" (et je suis sauvé).
ensuite:
TOTAL-(ce que je vois)-(ce que j'ai entendu)=TOTAL -2 -1-1 =1-2-1-1=0,
je dis "zéro" (et je suis sauvé).
ensuite:
TOTAL-(ce que je vois, c'est à dire rien)-(ce que j'ai entendu)=TOTAL -1-1-0=2,
je dis "deux" (et je suis sauvé).
Tout le monde à pigé?
On peut noter qu'on peut poser la même question avec 1000 prisonniers, et 7 couleurs, par exemple, et en apprenant à compter "modulo 7" au lieu de "modulo 3", on peut sauver de même 999 prisonniers...