• Aucun résultat trouvé

E651. Les distributions de chocolats

N/A
N/A
Protected

Academic year: 2022

Partager "E651. Les distributions de chocolats"

Copied!
2
0
0

Texte intégral

(1)

E651. Les distributions de chocolats

A la récréation, le maître d'école invite le petit Nicolas et ses camarades ‒ sauf Eudes qui est toujours en retard ‒ à former un grand cercle et il leur annonce la distribution d'un paquet de chocolats selon les règles suivantes : il donne un chocolat au petit Nicolas puis en se déplaçant dans le sens des aiguilles d'une montre, il saute un enfant et donne un chocolat au suivant, puis il saute deux enfants et donne un chocolat au suivant, puis il saute trois enfants et donne un chocolat au suivant... Après avoir effectué plusieurs tours de cercle, le maître donne le dernier chocolat au petit Nicolas qui au total en a reçu quatre comme certains de ses camarades. D'autres enfants en ont reçu deux et tous les autres n'ont rien reçu.

Eudes arrive enfin et s'intercale entre deux de ses camarades le long du grand cercle. Avec un deuxième paquet de chocolats de même contenance que le premier, le maître effectue une nouvelle distribution selon les mêmes règles en partant cette fois-ci d'Eudes qui reçoit le premier chocolat.

Lorsque le paquet est vide, tous les enfants sauf un ont reçu soit un chocolat soit deux chocolats.

Déterminer le nombre d'enfants dans la classe du petit Nicolas et le nombre de chocolats contenus dans chaque paquet.

Solution proposée par Claudio Baiocchi

Nicolas a 31 camarades (classe de 32) et dans chaque paquet on a 60 chocolats.

Remarque Autrefois, du moins en Italie, dans les petits pays de montagne il existait des écoles où les étudiants dans chaque classe étaient peu nombreux… Dans ces conditions une deuxième

solution existe : classe de 8 élèves, 12 chocolats. Par ailleurs la solution générale est de la forme :

chocolats pour garçons

Pour des classes pas trop nombreuses on traite aisément le problème à l’aide d’un quelconque langage de programmation, la seule restriction étant imposée par la mémoire à disposition : pour traiter le cas de garçons on utilisera un vecteur, dans la suite appelé , dont la n-ième

composante représente le nombre de chocolats que l’élève numéro n a reçu. On fera usage de l’arithmétique modulaire, ce qui suggère (si le langage le permet ; sinon on devra travailler un peu plus…) d’utiliser comme repère des élèves les indices allant de 0 à (ou bien de 0 à lorsqu’Eudes n’est pas là).

La position courante de l’élève qui va recevoir le chocolat sera notée p ; sera la position suivante, étant le saut à effectuer (valeurs 2, puis 3, puis 4, …)

Au départ toute composante du vecteur sera initialisée à 0 ; et on choisira où va compter les chocolats distribués. Puis on va exécuter le cycle :

(2)

A la sortie la valeur est la contenance du paquet ; bien entendu après contrôle du fait que toute composante de vaut 0, 2 ou 4 ; faute de quoi la valeur sera refusée.

Connaissant on peut traiter la deuxième distribution. Après avoir à nouveau initialisé à 0 toute composante du vecteur , partant encore de , et compte tenu du fait que coïncide avec , on fera :

La sortie normale correspond naturellement à ; mais on peut gagner du temps (et refuser comme nombre d’élèves) lorsque le cycle termine avec : quelque garçon vient de recevoir trois chocolats…

En cas de sortie normale, il ne reste qu’à contrôler si il existe une unique composante du vecteur qui vaut 0.

J’ai demandé à mon ordinateur de faire un cycle sur , contrôlant les valeurs de à partir de et jusqu’à ; comme indiqué plus haut en rouge, les bonnes valeurs de sont 8, 32, 128, 512, 2048, 8192 ; et pour ces valeurs la contenance du paquet est donnée par . Plus

précisément, tous les élèves ont reçu deux chocolats à l’exception des élèves numéro 0 et 2 qui ont reçu seulement un chocolat et de l’élève numéro qui n’a rien reçu.

Références

Documents relatifs

Un joli ballotin coloré contenant un assortiment gourmand d’hiver : Liquicrocs (cœur caramel enrobé de chocolat), mogettes (cœur nougatine enrobé de chocolat), noisettes

A la récréation, le maître d'école invite le petit Nicolas et ses camarades ‒ sauf Eudes qui est toujours en retard ‒ à former un grand cercle et il leur annonce la distribution

A la récréation, le maître d’école invite le petit Nicolas et ses camarades – sauf Eudes qui est toujours en retard – à former un grand cercle et il leur annonce la

A la récréation, le maître d'école invite le petit Nicolas et ses camarades ‒ sauf Eudes qui est toujours en retard ‒ à former un grand cercle et il leur annonce la distribution

A la récréation, le maître d'école invite le petit Nicolas et ses camarades ‒ sauf Eudes qui est toujours en retard ‒ à former un grand cercle et il leur annonce la distribution

A la récréation, le maître d'école invite le petit Nicolas et ses camarades ‒ sauf Eudes qui est toujours en retard ‒ à former un grand cercle et il leur annonce la distribution

A la récréation, le maître invite le petit Nicolas et ses camarades ‒ sauf Eudes qui est toujours en retard ‒ à former un grand cercle et il leur annonce la distribution d'un

A la récréation, le maître d'école invite le petit Nicolas et ses camarades ‒ sauf Eudes qui est toujours en retard ‒ à former un grand cercle et il leur annonce la distribution