• Aucun résultat trouvé

A 731. Le classement des billes.

N/A
N/A
Protected

Academic year: 2022

Partager "A 731. Le classement des billes."

Copied!
3
0
0

Texte intégral

(1)

A 731. Le classement des billes.

Problème suggéré par Augustin Genoud

Jules possède des billes d’apparence identique. Il sait qu’elles sont toutes de masses légèrement différentes.

Il aimerait les classer, dans l’ordre, de la plus lourde à la plus légère. Pour cela, il ne dispose que d’une petite balance à plateaux sur laquelle il ne peut mettre qu’une bille de chaque côté. Chaque utilisation de la balance constitue un test.

Q1 Combien de tests doit-il effectuer, au minimum, pour classer 5 billes, dans le pire des cas et en appliquant la meilleure stratégie ? [***]

Q2 Combien de tests doit-il effectuer, au minimum, pour classer 8 billes, dans le pire des cas et en appliquant la meilleure stratégie ? [****]

Q3 Pour les plus courageux : combien de billes, au maximum, peut-il classer en 34 tests, dans le pire des cas et en appliquant la meilleure stratégie ? [*****]

Solution proposée par Michel Lafond

Sur le site OEIS (Encyclopédie des suites) on trouve le nombre F (n) de tests nécessaires pour classer n objets de poids différents, par l’algorithme de Fusion-Insertion dont on verra un exemple dans Q3.

On voit que 5 objets nécessitent 7 tests, 8 objets 16 tests et 13 objets 34 tests.

 Commençons par un problème plus simple : l’insertion binaire, consistant à trouver la place d’un objet x parmi n objets déjà classés [On dit qu’on insère x]

On représentera un ensemble d’objets partiellement classés par un arbre (pas nécessairement connexe) dans lequel l’arc a --- b signifie a < b [On identifie les objets et leurs poids]

Notons IB (n) le nombre de tests nécessaires pour l’insertion de x parmi n objets classés.

On a évidemment IB (1) = 1.

Cas n = 2 :

On veut insérer x parmi a --- b Il faut 2 tests. C’est-à-dire IB (2) = 2.

On compare x à b avec 2 issues :

Dans le second cas, il faut comparer a et x pour conclure.

Cas n = 3 :

On veut insérer x parmi

Il faut encore 2 tests : C’est-à-dire IB (3) = 2.

On compare x à b avec 2 issues : [et le cas symétrique].

On est ramené à insérer x parmi (a) soit un second test.

Dans le cas général, on a (1) où est l’entier immédiatement supérieur ou égal à t.

La démonstration se fait par récurrence sur n : (1) est vraie pour n = 1, 2, 3

Si (1) est vraie jusqu’à n examinons l’insertion de x parmi n + 1 objets déjà classés :

Si n + 1 est impair, comparons x à l’objet médian avec Il y a objets de part et d’autre de dans (2) donc

n 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

F (n) 1 3 5 7 10 13 16 19 22 26 30 34 38 42 46

a x ou b

a b x

x

a b c

a b c

(2)

Si n + 1 est pair comparons x à l’objet médian avec Il y a objets à gauche de et objets à droite de Dans le cas le plus défavorable, on a

Mais n + 2 est impair, donc avec des inégalités strictes.

Ainsi .

Or implique .

Donc et on a encore

 Abordons maintenant le problème proposé par Augustin Genoud.

Il y a classements possibles de n objets.

Chaque test divise l’ensemble des possibilités en deux sous-ensembles dont ou moins un a un effectif supérieur ou égal à .

Au bout de k tests, on aura donc nécessairement un sous-ensemble de possibilités d’effectif supérieur ou égal à .

Pour lever toutes les incertitudes, il faut arriver à

Le nombre minimal théorique de tests pour classer n objets est Q1.

Pour classer 5 objets il faut au moins 7 tests, et 7 tests suffisent en procédant comme suit : On veut classer {a, b, c, d, e}

On compare (a et b) puis (c et d). On peut supposer qu’on a l’arbre

Comparons maintenant a et c [Par symétrie, on peut supposer a < c]

On arrive à

L’insertion binaire de e parmi (a, c, d) nécessite deux tests. [On peut supposer e < c < d ] Le cas le plus défavorable est

Il reste à insérer b parmi (e, c, d) ce qui nécessite 2 tests.

Au total on a effectué 2 + 1 + 2 + 2 = 7 tests.

Q2.

Pour classer 8 objets il faut au moins 16 tests, et 16 tests suffisent en procédant comme suit : On veut classer {a, b, c, d, e, f, g, h}

On classe d’abord {a, b, c, d, e} en 7 tests comme vu dans Q1.

On insère f parmi (a, b, c, d, e) en tests

a b

c d

e

a c d

b e

a e c

b

d

(3)

On insère g parmi (a, b, c, d, e, f) en tests On insère h parmi (a, b, c, d, e, f, g) en tests.

Au total on a effectué 7 + 3 + 3 + 3 = 16 tests.

Q3.

Ainsi, avec 34 tests, on ne peut espérer classer que 13 objets.

 On va d’abord classer 10 objets en 22 tests, ensuite on insérera successivement les 3 objets restants.

Pour classer 10 objets il faut au moins 22 tests, et 22 tests suffisent en procédant comme suit : On veut classer {a, b, c, d, e, f, g, h, i, j}.

On procède par Fusion-Insertion :

On compare (a, b) puis (c, d) puis (e, f) puis (g, h) puis (i, j) [5tests]

On classe {b, d, f, h, j} comme vu dans Q1. [7 tests]

On arrive donc à un arbre tel que

On insère e parmi (a, b, d) en IB (3) = 2 tests.

Le cas le plus défavorable est

On insère c parmi (e, a, b) en IB (3) = 2 tests On arrive donc à un arbre tel que

On insère i parmi (c, e, a, b, d, f, h) en IB (3) = 3 tests Dans le cas le plus défavorable, on arrive à un arbre tel que

Enfin, on insère g parmi (i, c, e, a, b, d, f) en IB (8) = 3 tests On a effectué 5 + 7 + 2 + 2 + 3 + 3 = 22 tests.

 Maintenant que 10 objets sont classés (en 22 tests) il ne reste plus qu’à - insérer le 11ème objet parmi les 10 classés en IB (10) = 4 tests - insérer le 12ème objet parmi les 11 classés en IB (11) = 4 tests - insérer le 13ème objet parmi les 12 classés en IB (12) = 4 tests.

On a effectué 22 + 4 + 4 + 4 = 34 tests.

a b d f h j

c e g i

a b d f h j

c g i

e

a b d f h j

c

g i

e

a b d f h j

c

g i e

Références

Documents relatifs

Hippolyte le premier servi en a reçu 12 et à l’issue du processus de redistribution, il en possédait 90, son voisin Théophile de gauche qui avait reçu 18 billes de Diophante

Q2 Cent enfants ont chacun cent billes dans leur cartable et s'adonnent au jeu suivant : à chaque tour, un enfant choisit un groupe d'enfants (dans lequel il y a au moins un enfant)

On prévoit un nombre de cases plus grand que le nombre de billes pour pouvoir les placer correctement à gauche ou à droite d’une bille choisie arbitrairement comme pivot : à

Q₃ Pour les plus courageux : combien de billes, au maximum, peut-il classer en 34 tests, dans le pire des cas et en appliquant la meilleure

Q 3 Pour les plus courageux : combien de billes, au maximum, peut-il classer en 34 tests, dans le pire des cas et en appliquant la meilleure

Jules doit donc effectuer au minimum 7 tests pour classer 5 billes, dans le pire des cas et en appliquant la meilleure stratégie.. Pour classer la 6 ème bille (f), il lui faut 3

Avec la première figure du cadre de gauche ci-dessus, il a tracé un segment , puis un cercle passant par les points et pour obtenir le contour du visage.. Il a colorié

Il a donc pour centre K entre A et I tel que 3AK=AS (K peut se construire simplement comme centre de gravité du triangle ABB’, où B’ est le symétrique de B par rapport à I,