evolvlabs academy
CollègeLycéeSupérieur
Compte
Mentions légalesConditions généralesConfidentialitéContact
Lycée/Terminale · Maths spé/Combinatoire et dénombrement

Combinatoire et dénombrement

CoursExercicesApprofondissementsVers la prépa
5 hPrérequis : ensembles, arbres de choix, raisonnement par récurrence.

Combien de codes PIN différents existe-t-il ? Combien de podiums possibles dans une course de 10 coureurs ? Combien de groupes de 3 élèves dans une classe de 30 ? Dénombrer, c'est répondre à ce genre de question sans tout écrire.

Tout le chapitre repose sur deux réflexes :

  • quand on sépare en cas qui ne se recouvrent pas, on additionne ;
  • quand on enchaîne des choix, on multiplie.

Le reste consiste à reconnaître la bonne situation : l'ordre compte-t-il, les répétitions sont-elles permises ?

1. Les deux règles de base

Définition · cardinal

Un ensemble EEE est fini s'il possède un nombre fini nnn d'éléments. Ce nombre est le cardinal de EEE, noté Card⁡(E)\Card(E)Card(E) ou ∣E∣|E|∣E∣. Par convention, Card⁡(∅)=0\Card(\varnothing)=0Card(∅)=0.

Additionner : séparer en cas

Une classe compte 12 filles et 15 garçons. Personne n'est à la fois fille et garçon, donc la classe compte 12+15=2712+15=2712+15=27 élèves. C'est le principe additif.

À retenir · principe additif

Si AAA et BBB sont deux ensembles finis disjoints (A∩B=∅A\cap B=\varnothingA∩B=∅), alors

Card⁡(A∪B)=Card⁡(A)+Card⁡(B).\Card(A\cup B)=\Card(A)+\Card(B).Card(A∪B)=Card(A)+Card(B).

Plus généralement, si A1,…,ApA_1,\dots,A_pA1​,…,Ap​ sont deux à deux disjoints, Card⁡(A1∪⋯∪Ap)=Card⁡(A1)+⋯+Card⁡(Ap)\Card(A_1\cup\dots\cup A_p)=\Card(A_1)+\dots+\Card(A_p)Card(A1​∪⋯∪Ap​)=Card(A1​)+⋯+Card(Ap​).

Remarque

Si AAA et BBB se recouvrent, les éléments de A∩BA\cap BA∩B sont comptés deux fois, il faut les retirer une fois :

Card⁡(A∪B)=Card⁡(A)+Card⁡(B)−Card⁡(A∩B).\Card(A\cup B)=\Card(A)+\Card(B)-\Card(A\cap B).Card(A∪B)=Card(A)+Card(B)−Card(A∩B).

Multiplier : enchaîner des choix

Un menu se compose d'une entrée, d'un plat et d'un dessert. Pour chaque entrée, on a le même nombre de plats possibles, et pour chaque couple (entrée, plat), le même nombre de desserts. L'arbre ci-dessous montre pourquoi le nombre total de menus est un produit. Change le nombre de choix à chaque étape.

EntréePlatDessert
Entrées3
Plats4
Desserts2

3 × 4 × 2 = 24 menus

Chaque chemin de la racine à une feuille est un menu. À chaque étape, chaque branche se divise de la même façon : le nombre de feuilles est le produit des nombres de choix.

Un menu est un triplet (entrée, plat, dessert) : c'est un élément d'un produit cartésien.

Définition · produit cartésien

Le produit cartésien E×FE\times FE×F est l'ensemble des couples (x ;y)(x\,;y)(x;y) avec x∈Ex\in Ex∈E et y∈Fy\in Fy∈F. Plus généralement, E1×⋯×EkE_1\times\dots\times E_kE1​×⋯×Ek​ est l'ensemble des kkk-uplets (x1,…,xk)(x_1,\dots,x_k)(x1​,…,xk​) avec xi∈Eix_i\in E_ixi​∈Ei​.

À retenir · principe multiplicatif

Card⁡(E1×⋯×Ek)=Card⁡(E1)×⋯×Card⁡(Ek).\Card(E_1\times\dots\times E_k)=\Card(E_1)\times\dots\times\Card(E_k).Card(E1​×⋯×Ek​)=Card(E1​)×⋯×Card(Ek​).

Exemple

Avec 3 entrées, 4 plats et 2 desserts, il y a 3×4×2=243\times4\times2=243×4×2=24 menus.

2. Les listes avec répétition

Un code PIN, c'est 4 chiffres écrits dans un ordre précis, et un même chiffre peut revenir : 0 0 7 2 est un code valable, différent de 7 2 0 0. C'est une liste, qu'on appelle un kkk-uplet.

Définition · k-uplet

Soit EEE un ensemble et k⩾1k\geqslant1k⩾1. Un kkk-uplet (ou kkk-liste) d'éléments de EEE est une suite (x1,…,xk)(x_1,\dots,x_k)(x1​,…,xk​) d'éléments de EEE. L'ordre compte et les répétitions sont permises. L'ensemble des kkk-uplets de EEE est Ek=E×⋯×EE^k=E\times\dots\times EEk=E×⋯×E.

Pour remplir chacune des kkk cases, on a à chaque fois les nnn éléments de EEE à disposition. Le principe multiplicatif donne n×n×⋯×nn\times n\times\dots\times nn×n×⋯×n.

À retenir · nombre de k-uplets

Si Card⁡(E)=n\Card(E)=nCard(E)=n, le nombre de kkk-uplets d'éléments de EEE est

Card⁡(Ek)=nk.\Card(E^k)=n^k.Card(Ek)=nk.

Exemple

Un code PIN est un 4-uplet de {0,1,…,9}\{0,1,\dots,9\}{0,1,…,9} : il y en a 104=10 00010^4=10\,000104=10000.

Combien de parties a un ensemble ?

Une partie de EEE (ou sous-ensemble) s'obtient en décidant, pour chaque élément, s'il est dedans ou dehors. On peut coder cette décision par 1 ou 0 : une partie devient alors une liste de 0 et de 1.

Partie : { a, c } · code : 1010

Touche un élément pour le mettre dedans (1) ou dehors (0). Avec 4 éléments, il y a 2 × 2 × 2 × 2 = 16 codes, donc 16 parties de E = {a, b, c, d}.

À retenir · nombre de parties d'un ensemble

Si Card⁡(E)=n\Card(E)=nCard(E)=n, l'ensemble P(E)\Parties(E)P(E) des parties de EEE vérifie

Card⁡(P(E))=2n.\Card\big(\Parties(E)\big)=2^n.Card(P(E))=2n.
Démonstration

Notons E={x1,…,xn}E=\{x_1,\dots,x_n\}E={x1​,…,xn​}. À toute partie AAA de EEE, on associe le nnn-uplet (ε1,…,εn)(\varepsilon_1,\dots,\varepsilon_n)(ε1​,…,εn​) de {0 ;1}n\{0\,;1\}^n{0;1}n défini par

εi={1si xi∈A,0si xi∉A.\varepsilon_i=\begin{cases}1 & \text{si } x_i\in A,\\ 0 & \text{si } x_i\notin A.\end{cases}εi​={10​si xi​∈A,si xi​∈/A.​

Réciproquement, tout nnn-uplet de {0 ;1}n\{0\,;1\}^n{0;1}n définit une unique partie : celle formée des xix_ixi​ tels que εi=1\varepsilon_i=1εi​=1. On a donc une correspondance un à un (une bijection) entre P(E)\Parties(E)P(E) et {0 ;1}n\{0\,;1\}^n{0;1}n. Les deux ensembles ont le même cardinal :

Card⁡(P(E))=Card⁡({0 ;1}n)=2n.\Card\big(\Parties(E)\big)=\Card\big(\{0\,;1\}^n\big)=2^n.Card(P(E))=Card({0;1}n)=2n.

3. Les listes sans répétition

Pour un podium, le premier, le deuxième et le troisième sont trois coureurs différents. L'ordre compte toujours, mais un élément ne peut plus revenir.

La factorielle

Définition · factorielle

Pour n∈N∗n\in\N^*n∈N∗, n!=1×2×⋯×nn!=1\times2\times\dots\times nn!=1×2×⋯×n (« factorielle nnn »). Par convention, 0!=10!=10!=1.

Elle grandit très vite : 3!=63!=63!=6, 5!=1205!=1205!=120, 10!=3 628 80010!=3\,628\,80010!=3628800.

Les k-uplets d'éléments distincts

On remplit les kkk cases une par une. Pour la première, on a nnn choix. Pour la deuxième, il en reste n−1n-1n−1, puisque l'élément déjà pris est exclu. Et ainsi de suite jusqu'à la kkk-ième case, pour laquelle il reste n−k+1n-k+1n−k+1 choix.

À retenir · nombre de k-uplets d'éléments distincts

Soit EEE de cardinal nnn et 1⩽k⩽n1\leqslant k\leqslant n1⩽k⩽n. Le nombre de kkk-uplets d'éléments deux à deux distincts de EEE est

n×(n−1)×⋯×(n−k+1)=n!(n−k)!.n\times(n-1)\times\dots\times(n-k+1)=\frac{n!}{(n-k)!}.n×(n−1)×⋯×(n−k+1)=(n−k)!n!​.
Démonstration

Le principe multiplicatif donne le produit n×(n−1)×⋯×(n−k+1)n\times(n-1)\times\dots\times(n-k+1)n×(n−1)×⋯×(n−k+1), qui compte kkk facteurs. En multipliant et en divisant par (n−k)!(n-k)!(n−k)! :

n×⋯×(n−k+1)=n×⋯×(n−k+1)×(n−k)!(n−k)!=n!(n−k)!.n\times\dots\times(n-k+1)=\frac{n\times\dots\times(n-k+1)\times(n-k)!}{(n-k)!}=\frac{n!}{(n-k)!}.n×⋯×(n−k+1)=(n−k)!n×⋯×(n−k+1)×(n−k)!​=(n−k)!n!​.

Exemple pour E={a,b,c,d}E=\{a,b,c,d\}E={a,b,c,d} et k=2k=2k=2. On obtient 4×3=124\times3=124×3=12 couples d'éléments distincts :

(a,b)(b,a)(c,a)(d,a)(a,c)(b,c)(c,b)(d,b)(a,d)(b,d)(c,d)(d,c)\begin{array}{cccc} (a,b) & (b,a) & (c,a) & (d,a)\\ (a,c) & (b,c) & (c,b) & (d,b)\\ (a,d) & (b,d) & (c,d) & (d,c) \end{array}(a,b)(a,c)(a,d)​(b,a)(b,c)(b,d)​(c,a)(c,b)(c,d)​(d,a)(d,b)(d,c)​

Exemple

Pour un podium parmi 10 coureurs : 10×9×8=72010\times9\times8=72010×9×8=720 possibilités.

Les permutations

Quand on range tous les éléments (k=nk=nk=n), on parle de permutation.

À retenir · nombre de permutations

Une permutation de EEE est une façon d'ordonner tous ses éléments, c'est-à-dire un nnn-uplet d'éléments distincts de EEE. Si Card⁡(E)=n\Card(E)=nCard(E)=n, il y en a

n!=1×2×⋯×n.n!=1\times2\times\dots\times n.n!=1×2×⋯×n.

Exemple

Il y a 5!=1205!=1205!=120 façons de classer 5 coureurs, et 5!=1205!=1205!=120 anagrammes du mot MATHS.

4. Les combinaisons : quand l'ordre ne compte plus

Reprenons les 10 coureurs. Si les trois premiers reçoivent le même prix, on ne s'intéresse plus qu'au groupe des trois gagnants. Or chaque groupe de 3 correspond à 3!=63!=63!=6 podiums (les 6 façons de les ranger). Il y a donc 7206=120\dfrac{720}{6}=1206720​=120 groupes possibles.

C'est toute l'idée des combinaisons : on compte les listes, puis on divise par le nombre de façons de ranger chaque groupe.

Définition · combinaison

Soit EEE de cardinal nnn et 0⩽k⩽n0\leqslant k\leqslant n0⩽k⩽n. Une combinaison de kkk éléments de EEE est une partie de EEE à kkk éléments. L'ordre ne compte pas, pas de répétition. Leur nombre est noté (nk)\binom nk(kn​) et se lit « kkk parmi nnn ».

À retenir · coefficient binomial

Pour 0⩽k⩽n0\leqslant k\leqslant n0⩽k⩽n :

(nk)=n!k! (n−k)!=n×(n−1)×⋯×(n−k+1)k!.\binom nk=\frac{n!}{k!\,(n-k)!}=\frac{n\times(n-1)\times\dots\times(n-k+1)}{k!}.(kn​)=k!(n−k)!n!​=k!n×(n−1)×⋯×(n−k+1)​.
Démonstration

On compte les kkk-uplets d'éléments distincts de EEE de deux façons.

Première façon. D'après la partie 3, il y en a n!(n−k)!\dfrac{n!}{(n-k)!}(n−k)!n!​.

Deuxième façon. On choisit d'abord l'ensemble des kkk éléments ((nk)\binom nk(kn​) façons), puis on les range (k!k!k! façons). Il y en a donc (nk)×k!\binom nk\times k!(kn​)×k!.

En égalant, (nk)×k!=n!(n−k)!\binom nk\times k!=\dfrac{n!}{(n-k)!}(kn​)×k!=(n−k)!n!​, d'où (nk)=n!k! (n−k)!\binom nk=\dfrac{n!}{k!\,(n-k)!}(kn​)=k!(n−k)!n!​.

Exemple pour n=4n=4n=4 et k=2k=2k=2. Les 12 couples de la partie 3 se regroupent par paquets de 2!=22!=22!=2, un paquet par partie :

{a,b}:(a,b),(b,a){a,c}:(a,c),(c,a){a,d}:(a,d),(d,a){b,c}:(b,c),(c,b){b,d}:(b,d),(d,b){c,d}:(c,d),(d,c)\begin{array}{lll} \{a,b\}:(a,b),(b,a) & \{a,c\}:(a,c),(c,a) & \{a,d\}:(a,d),(d,a)\\ \{b,c\}:(b,c),(c,b) & \{b,d\}:(b,d),(d,b) & \{c,d\}:(c,d),(d,c) \end{array}{a,b}:(a,b),(b,a){b,c}:(b,c),(c,b)​{a,c}:(a,c),(c,a){b,d}:(b,d),(d,b)​{a,d}:(a,d),(d,a){c,d}:(c,d),(d,c)​

Il y a donc (42)=122=6\binom42=\dfrac{12}{2}=6(24​)=212​=6 parties à 2 éléments.

Exemple

Le nombre de groupes de 3 élèves dans une classe de 30 est (303)=30×29×283×2×1=4 060\dbinom{30}{3}=\dfrac{30\times29\times28}{3\times2\times1}=4\,060(330​)=3×2×130×29×28​=4060.

Propriétés des coefficients binomiaux

Propriété · valeurs à connaître

Pour n⩾2n\geqslant 2n⩾2 :

(n0)=(nn)=1,(n1)=n,(n2)=n(n−1)2.\binom n0=\binom nn=1,\qquad \binom n1=n,\qquad \binom n2=\frac{n(n-1)}2.(0n​)=(nn​)=1,(1n​)=n,(2n​)=2n(n−1)​.

À retenir · symétrie

Pour 0⩽k⩽n0\leqslant k\leqslant n0⩽k⩽n :

(nk)=(nn−k).\binom nk=\binom n{n-k}.(kn​)=(n−kn​).

Choisir les kkk éléments que l'on prend revient à choisir les n−kn-kn−k éléments que l'on laisse.

À retenir · somme des coefficients binomiaux

Pour tout entier n⩾0n\geqslant0n⩾0 :

∑k=0n(nk)=(n0)+(n1)+⋯+(nn)=2n.\sum_{k=0}^{n}\binom nk=\binom n0+\binom n1+\dots+\binom nn=2^n.k=0∑n​(kn​)=(0n​)+(1n​)+⋯+(nn​)=2n.
Démonstration exigible au bac · somme des coefficients binomiaux

Soit EEE un ensemble à nnn éléments. On compte ses parties de deux façons.

Première façon. D'après la partie 2, EEE possède 2n2^n2n parties.

Deuxième façon. On range les parties selon leur nombre d'éléments k∈{0,1,…,n}k\in\{0,1,\dots,n\}k∈{0,1,…,n}. Pour kkk fixé, il y a (nk)\binom nk(kn​) parties à kkk éléments. Ces n+1n+1n+1 cas sont disjoints et couvrent toutes les parties, donc par le principe additif, il y a ∑k=0n(nk)\sum_{k=0}^n\binom nk∑k=0n​(kn​) parties.

En égalant les deux résultats, ∑k=0n(nk)=2n\sum_{k=0}^{n}\binom nk=2^n∑k=0n​(kn​)=2n.

Exemple pour E={a,b,c}E=\{a,b,c\}E={a,b,c} :

∅⏟(30)=1{a},{b},{c}⏟(31)=3{a,b},{a,c},{b,c}⏟(32)=3{a,b,c}⏟(33)=1\underbrace{\varnothing}_{\binom30=1}\qquad \underbrace{\{a\},\{b\},\{c\}}_{\binom31=3}\qquad \underbrace{\{a,b\},\{a,c\},\{b,c\}}_{\binom32=3}\qquad \underbrace{\{a,b,c\}}_{\binom33=1}(03​)=1∅​​(13​)=3{a},{b},{c}​​(23​)=3{a,b},{a,c},{b,c}​​(33​)=1{a,b,c}​​

et l'on retrouve 1+3+3+1=8=231+3+3+1=8=2^31+3+3+1=8=23.

Le triangle de Pascal

On range les coefficients (nk)\binom nk(kn​) en triangle : ligne nnn, colonne kkk. Chaque nombre est alors la somme des deux nombres situés juste au-dessus. Survole les cases pour le vérifier.

111121133114641151010511615201561

ligne 4, colonne 2 : 3 + 3 = 6

Survole ou touche une case : chaque nombre est la somme des deux nombres situés juste au-dessus. La case de la ligne n, colonne k contient le coefficient binomial « k parmi n ».

À retenir · relation de Pascal

Pour tous entiers n⩾2n\geqslant2n⩾2 et 1⩽k⩽n−11\leqslant k\leqslant n-11⩽k⩽n−1 :

(nk)=(n−1k−1)+(n−1k).\binom nk=\binom{n-1}{k-1}+\binom{n-1}{k}.(kn​)=(k−1n−1​)+(kn−1​).
Démonstration exigible au bac · relation de Pascal

Par dénombrement. Soit EEE un ensemble à nnn éléments et aaa un élément fixé de EEE. On sépare les parties de EEE à kkk éléments en deux cas disjoints :

  • celles qui contiennent aaa : il reste à choisir k−1k-1k−1 éléments parmi les n−1n-1n−1 autres, soit (n−1k−1)\binom{n-1}{k-1}(k−1n−1​) parties ;
  • celles qui ne contiennent pas aaa : on choisit les kkk éléments parmi les n−1n-1n−1 autres, soit (n−1k)\binom{n-1}{k}(kn−1​) parties.

Par le principe additif, (nk)=(n−1k−1)+(n−1k)\binom nk=\binom{n-1}{k-1}+\binom{n-1}{k}(kn​)=(k−1n−1​)+(kn−1​).

Par le calcul. On réduit au même dénominateur k! (n−k)!k!\,(n-k)!k!(n−k)!, avec k!=k×(k−1)!k!=k\times(k-1)!k!=k×(k−1)! et (n−k)!=(n−k)×(n−1−k)!(n-k)!=(n-k)\times(n-1-k)!(n−k)!=(n−k)×(n−1−k)! :

(n−1k−1)+(n−1k)=(n−1)!×kk! (n−k)!+(n−1)!×(n−k)k! (n−k)!=(n−1)! [k+(n−k)]k! (n−k)!=n!k! (n−k)!=(nk).\begin{aligned} \binom{n-1}{k-1}+\binom{n-1}{k} &=\frac{(n-1)!\times k}{k!\,(n-k)!}+\frac{(n-1)!\times(n-k)}{k!\,(n-k)!}\\[4pt] &=\frac{(n-1)!\,\big[k+(n-k)\big]}{k!\,(n-k)!}=\frac{n!}{k!\,(n-k)!}=\binom nk. \end{aligned}(k−1n−1​)+(kn−1​)​=k!(n−k)!(n−1)!×k​+k!(n−k)!(n−1)!×(n−k)​=k!(n−k)!(n−1)![k+(n−k)]​=k!(n−k)!n!​=(kn​).​

5. Quel modèle choisir ?

Face à un exercice, deux questions suffisent presque toujours.

  1. L'ordre compte-t-il ? Si l'on échange deux éléments, obtient-on un résultat différent ? Un code, un podium, un mot : oui. Une main de cartes, un groupe, un tirage simultané : non.
  2. Les répétitions sont-elles possibles ? Un même élément peut-il apparaître plusieurs fois ? Tirage avec remise, code : oui. Tirage sans remise, personnes distinctes : non.
L’ordre compte-t-il ?
Les répétitions sont-elles possibles ?

k-uplets d’éléments distincts

n! / (n − k)! = 10! / 7! = 720

Tirer 3 jetons parmi 10, sans remise, en notant l’ordre de sortie.

Réponds aux deux questions : le modèle et la formule s’en déduisent. n est le nombre d’éléments disponibles, k le nombre d’éléments choisis.
OrdreRépétitionsModèleNombre
ouiouikkk-upletsnkn^knk
ouinonkkk-uplets d'éléments distinctsn!(n−k)!\dfrac{n!}{(n-k)!}(n−k)!n!​
nonnoncombinaisons(nk)\dbinom nk(kn​)

La technique du « au moins un »

Dès qu'un énoncé dit « au moins un », le plus simple est souvent de compter le contraire, « aucun », puis de soustraire au total.

Exemple

Combien de codes de 4 chiffres contiennent au moins un 7 ? Il y a 10410^4104 codes en tout, et 949^494 codes sans aucun 7 (chaque chiffre est pris parmi les 9 autres). Donc 104−94=10 000−6 561=3 43910^4-9^4=10\,000-6\,561=3\,439104−94=10000−6561=3439 codes contiennent au moins un 7.

À retenir

  • Séparer en cas disjoints : on additionne. Enchaîner des choix : on multiplie.
  • Listes avec répétition : nkn^knk. Ensemble des parties : 2n2^n2n.
  • Listes sans répétition : n!(n−k)!\dfrac{n!}{(n-k)!}(n−k)!n!​. Permutations : n!n!n!.
  • Parties à kkk éléments : (nk)=n!k! (n−k)!\dbinom nk=\dfrac{n!}{k!\,(n-k)!}(kn​)=k!(n−k)!n!​, avec (nk)=(nn−k)\dbinom nk=\dbinom n{n-k}(kn​)=(n−kn​), ∑k=0n(nk)=2n\displaystyle\sum_{k=0}^n\binom nk=2^nk=0∑n​(kn​)=2n et la relation de Pascal.
  • « Au moins un » : on passe par le contraire.

Remarque

À la calculatrice : touche nCr (ou Combinaison). En Python : from math import comb, puis comb(n, k).

EnsuiteExercices →