Et là, c'est le drame, avec tous ces shooters tu as complètement oublié le code. Il est quatre heures et demi,
personne ne viendra t'ouvrir. Il commence à pleuvoir, et la fille que tu ramènes (les demoiselles,
zomos et autres, adaptez SVP) semble déjà vouloir appeler un taxi. Le cerveau encore sous l'effet
des pilypilys, tu parviens au prix d'un effort surhumain à te souvenir que le code se compose de
4 symboles, pas forcément différents. De plus tu sais que le digicode ne nécessite pas de validation,
et considère uniquement les 4 derniers chiffres entrés , c'est à dire que le fait de taper "12345"
te permet d'essayer les codes "1234" et "2345". Muni de ces précieuses informations, tu
entrevois plusieurs solutions techniques pour ouvrir cette #&!% porte et ainsi sauver ta nuit :
- la force brute : composer tous les codes dans l'ordre, 0000, 0001, ... BBBA, BBBB.
Au moins tu finiras bien par tomber sur le bon. En considérant que tu peux taper 4 touches
par seconde, en combien de temps vas-tu taper l'ensemble des combinaisons ? Quelle est
l'espérance d'ouvrir la porte (i.e. en moyenne, en combien de temps trouveras-tu le code) ?
- le hasard : tu appuies frénétiquement sur les touches, au hasard. A raison de 8 touches
par seconde, quelle est l'espérance de composer le bon code ?
- la subtilité : il doit y avoir un moyen de minimiser le nombres de touches à taper pour
essayer toutes les combinaisons possibles... Y a-t-il une séquence qui parcoure l'ensemble des
codes sans jamais répéter deux fois le même ? Quel est le nombre minimal de symboles à entrer pour
parcourir tous les codes ? Quelle est l'espérance d'ouvrir la porte ? Comment générer une telle
séquence optimale ? Combien y en a-t-il ? Que de questions...
(Merci à D.G. !)