Poziom zaawansowany

Kombinatoryka

Sztuka liczenia bez wypisywania. Reguła mnożenia, silnia, permutacje, wariacje i kombinacje odpowiadają na jedno pytanie — na ile sposobów da się to zrobić — a cała trudność sprowadza się do dwóch decyzji: czy kolejność ma znaczenie i czy elementy mogą się powtarzać.

Zanim zaczniesz

Ten temat opiera się na wcześniejszych zagadnieniach. Zanim zaczniesz, warto przerobić poniższe lekcje — dzięki nim wszystko pójdzie gładko:

Gdzie się tego używa

Konkretne sytuacje, w których liczysz dokładnie tak, jak uczy ta lekcja:

  • Siła hasła i PIN-u
    Czterocyfrowy PIN to 10⁴ = 10 000 możliwości — telefon blokuje się po trzech próbach, ale wykradziona baza takich kodów pada w ułamku sekundy. Hasło z ośmiu małych liter to 26⁸ ≈ 209 miliardów kombinacji, a z ośmiu znaków wybieranych spośród 62 (małe litery, wielkie, cyfry) — 62⁸ ≈ 218 bilionów, czyli ponad tysiąc razy więcej. Każdy dołożony znak mnoży tę liczbę przez rozmiar alfabetu, a nie dodaje do niej.
  • Układanie trasy kuriera
    Osiem adresów można objechać w 8! = 40 320 kolejnościach; dwa adresy więcej i jest ich 10! = 3 628 800, dziewięćdziesiąt razy tyle. Dlatego program do planowania tras nie sprawdza wszystkich wariantów, tylko szuka dobrego — sam rachunek silni mówi, w którym momencie przeglądanie po kolei przestaje być wykonalne.
  • Terminarz rozgrywek
    W lidze szesnastu drużyn każda gra z każdą raz w rundzie: to C(16, 2) = 120 meczów, a przy dwóch rundach 240. Osiem spotkań w kolejce daje 30 kolejek, więc jeszcze przed losowaniem wiadomo, ile weekendów musi pomieścić sezon i ile kompletów sędziowskich trzeba obsadzić.
  • Dobór zespołu do projektu
    Z dziesięciu kandydatów trzyosobowy zespół można złożyć na C(10, 3) = 120 sposobów. Gdy role są różne — lider, analityk, tester — liczy się kolejność i wariantów jest 10 · 9 · 8 = 720, sześć razy więcej, bo każdą trójkę da się obsadzić na 3! = 6 sposobów. Ta sama różnica rozstrzyga w rekrutacji, czy rozmowa dotyczy składu zespołu, czy przydziału zadań w nim.
  • Skąd bierze się procent składany
    Dziesięć lat po 5% rocznie mnoży kapitał przez (1 + 0,05)¹⁰ ≈ 1,6289. Dwumian Newtona rozkłada tę liczbę na składniki: 1 to kapitał, 10 · 0,05 = 0,5 to same odsetki proste, a C(10, 2) · 0,05² = 0,1125 to odsetki od odsetek — pierwszy wyraz, którego rachunek prosty w ogóle nie widzi. Dalsze wyrazy (0,015 i 0,0013) dokładają resztę. Dlatego przy niskich stopach różnica między procentem prostym a składanym jest mała, a przy wysokich rośnie kwadratowo.

Wszystkie wzory

  • Reguła mnożenia

    N=k1k2kmN = k_1 \cdot k_2 \cdot \ldots \cdot k_m

    wybór w kilku niezależnych krokach — liczby możliwości mnożymy

  • Silnia

    n!=123n,0!=1n! = 1 \cdot 2 \cdot 3 \cdot \ldots \cdot n, \qquad 0! = 1

    iloczyn kolejnych liczb naturalnych; 0! z definicji równa się 1

  • Permutacje

    Pn=n!P_n = n!

    liczba ustawień wszystkich n elementów w kolejności

  • Wariacje bez powtórzeń

    Vnk=n!(nk)!=n(n1)(nk+1)V_n^k = \frac{n!}{(n-k)!} = n(n-1)\ldots(n-k+1)

    wybór k z n, kolejność ma znaczenie, bez powtórzeń

  • Wariacje z powtórzeniami

    Vnk=nk\overline{V}_n^k = n^k

    k razy wybieramy spośród tych samych n możliwości

  • Kombinacje

    Cnk=(nk)=n!k!(nk)!C_n^k = \binom{n}{k} = \frac{n!}{k! \, (n-k)!}

    wybór k z n, kolejność NIE ma znaczenia

  • Symetria kombinacji

    (nk)=(nnk)\binom{n}{k} = \binom{n}{n-k}

    wybranie k elementów to to samo, co odrzucenie pozostałych n − k

  • Reguła trójkąta Pascala

    (nk)=(n1k1)+(n1k)\binom{n}{k} = \binom{n-1}{k-1} + \binom{n-1}{k}

    każdy wyraz trójkąta jest sumą dwóch stojących nad nim

  • Dwumian Newtona

    (a+b)n=k=0n(nk)ankbk(a+b)^n = \sum_{k=0}^{n} \binom{n}{k} a^{n-k} b^k

    współczynniki rozwinięcia to n-ty wiersz trójkąta Pascala

Kombinatoryka odpowiada na pytanie „na ile sposobów?", zanim ktokolwiek zdąży zacząć wypisywać przypadki. Jest też warunkiem wstępnym prawdopodobieństwa klasycznego: żeby podzielić liczbę zdarzeń sprzyjających przez liczbę wszystkich, trzeba najpierw umieć obie policzyć.

Reguła mnożenia

Cała kombinatoryka wyrasta z jednej obserwacji. Jeśli wybór składa się z kilku niezależnych kroków, a kolejne kroki dają k1,k2,,kmk_1, k_2, \ldots, k_m możliwości, to wszystkich wyników jest:

N=k1k2kmN = k_1 \cdot k_2 \cdot \ldots \cdot k_m

Możliwości mnożymy, a nie dodajemy — bo każdą decyzję z pierwszego kroku da się połączyć z każdą decyzją z drugiego.

W restauracji są 4 zupy, 6 dań głównych i 3 desery. Ile jest różnych trzydaniowych obiadów?

Silnia

Iloczyn kolejnych liczb naturalnych pojawia się w kombinatoryce tak często, że dostał własny symbol:

n!=123nn! = 1 \cdot 2 \cdot 3 \cdot \ldots \cdot n

Czyta się to „n silnia". Kilka pierwszych wartości warto znać na pamięć:

nn01234567
n!n!1126241207205040

Uwaga na pierwszą kolumnę: 0!=10! = 1, z definicji. Pusty ciąg można ustawić dokładnie na jeden sposób — nie robiąc nic — a poza tym bez tej umowy wzory na kombinacje dzieliłyby przez zero.

012345670200400600800nn!12624120720n!
Trzy pierwsze słupki są w tej skali prawie niewidoczne. Silnia rośnie szybciej niż jakakolwiek potęga — 10! to już ponad trzy i pół miliona.

Ten wzrost jest praktyczną wskazówką: skoro dziesięć osób da się ustawić na 36288003\,628\,800 sposobów, nie ma mowy o rozwiązywaniu zadań przez wypisywanie przypadków.

Permutacje

Permutacja to ustawienie wszystkich nn elementów w kolejności. Pierwsze miejsce można obsadzić na nn sposobów, drugie na n1n-1 (jeden element już zużyty), i tak dalej:

Pn=n(n1)21=n!P_n = n \cdot (n-1) \cdot \ldots \cdot 2 \cdot 1 = n!
Na ile sposobów pięć osób może ustawić się w kolejce?

Wariacje bez powtórzeń

Gdy z nn elementów wybieramy tylko kk, ale kolejność ma znaczenie, mówimy o wariacjach bez powtórzeń:

Vnk=n!(nk)!=n(n1)(nk+1)V_n^k = \frac{n!}{(n-k)!} = n(n-1)\ldots(n-k+1)

Druga postać jest wygodniejsza w rachunku: to po prostu kk malejących czynników, zaczynając od nn.

W klubie jest 8 osób. Na ile sposobów można wybrać przewodniczącego, sekretarza i skarbnika?

Wariacje z powtórzeniami

Jeśli elementy wolno powtarzać, każdy z kk kroków ma pełne nn możliwości, więc reguła mnożenia daje wprost:

Vnk=nk\overline{V}_n^k = n^k
Ile jest czterocyfrowych kodów PIN?

Kombinacje

Gdy wybieramy kk elementów z nn, a kolejność nie ma znaczenia, mamy kombinacje:

Cnk=(nk)=n!k!(nk)!C_n^k = \binom{n}{k} = \frac{n!}{k! \, (n-k)!}

Skąd bierze się k!k! w mianowniku? Stąd, że każdy kk-elementowy zbiór został policzony we wariacjach k!k! razy — raz dla każdego ustawienia tych samych elementów. Dzielimy więc przez liczbę tych ustawień:

Cnk=Vnkk!C_n^k = \frac{V_n^k}{k!}
Na ile sposobów można wybrać trzyosobową delegację spośród 8 osób?

Symetria

Kombinacje mają własność, która oszczędza mnóstwo rachunku:

(nk)=(nnk)\binom{n}{k} = \binom{n}{n-k}

Wybranie kk elementów to przecież to samo, co wskazanie nkn-k elementów, które zostawiamy. Dlatego (2018)\binom{20}{18} liczy się jak (202)=190\binom{20}{2} = 190, a nie przez rozpisywanie osiemnastu czynników.

−10123456704812162024kC(6, k)1615201561C(6, k)
Liczby wyborów z sześcioelementowego zbioru układają się symetrycznie: skrajne słupki to wybór niczego i wybór wszystkiego, a najwyższy stoi dokładnie w połowie.

Suma wszystkich słupków wynosi 64=2664 = 2^6 — tyle jest podzbiorów zbioru sześcioelementowego, bo o każdym elemencie decydujemy niezależnie: brać czy nie brać.

Trójkąt Pascala

Symbole (nk)\binom{n}{k} dla kolejnych nn układają się w trójkąt, w którym nie trzeba liczyć ani jednej silni. Wiersze numerujemy od zera:

111121133114641151010511615201561\begin{array}{ccccccccccccc} & & & & & & 1 \\ & & & & & 1 & & 1 \\ & & & & 1 & & 2 & & 1 \\ & & & 1 & & 3 & & 3 & & 1 \\ & & 1 & & 4 & & 6 & & 4 & & 1 \\ & 1 & & 5 & & 10 & & 10 & & 5 & & 1 \\ 1 & & 6 & & 15 & & 20 & & 15 & & 6 & & 1 \end{array}

Reguła budowy jest jedna: każdy wiersz zaczyna się i kończy jedynką, a każdy wyraz w środku jest sumą dwóch stojących nad nim. Zapisana symbolami, jest to tożsamość:

(nk)=(n1k1)+(n1k)\binom{n}{k} = \binom{n-1}{k-1} + \binom{n-1}{k}

Dlaczego działa? Wskaż jeden ustalony element zbioru — powiedzmy pierwszy. Każdy kk-elementowy wybór albo go bierze (zostaje k1k-1 miejsc do obsadzenia spośród n1n-1 pozostałych elementów), albo go pomija (wszystkie kk miejsc trzeba obsadzić spośród n1n-1). Te dwa przypadki nie mają części wspólnej i wyczerpują wszystkie możliwości, więc liczby się dodają.

Trójkąt pokazuje przy okazji dwie własności, które już znamy, tyle że na rysunku. Symetria (nk)=(nnk)\binom{n}{k} = \binom{n}{n-k} to lustrzane odbicie wiersza względem jego środka. A suma wyrazów wiersza nn wynosi 2n2^n — wiersz szósty to dokładnie 1,6,15,20,15,6,11, 6, 15, 20, 15, 6, 1 z wykresu wyżej, sumujący się do 6464.

Dopisz ósmy wiersz trójkąta Pascala (czyli wiersz numer 7).

Dwumian Newtona

Trójkąt nie jest ciekawostką — to tablica współczynników potęgi sumy. Wzór dwumianowy mówi:

(a+b)n=k=0n(nk)ankbk(a+b)^n = \sum_{k=0}^{n} \binom{n}{k} a^{n-k} b^k

Uzasadnienie jest znów kombinatoryczne, a nie rachunkowe. Potęga (a+b)n(a+b)^n to iloczyn nn jednakowych nawiasów; wymnażając je, z każdego nawiasu bierzemy albo aa, albo bb. Składnik z bkb^k powstaje dokładnie wtedy, gdy bb wzięliśmy z kk nawiasów spośród nn — a takich wyborów jest (nk)\binom{n}{k}. Stąd współczynnik.

W praktyce nie sumuje się tego symbolicznie, tylko odczytuje nn-ty wiersz trójkąta. Dla n=4n = 4 jest to 1,4,6,4,11, 4, 6, 4, 1:

(a+b)4=a4+4a3b+6a2b2+4ab3+b4(a+b)^4 = a^4 + 4a^3b + 6a^2b^2 + 4ab^3 + b^4

Zwróć uwagę na dwa niezależne rytmy: wykładnik przy aa maleje od nn do zera, wykładnik przy bb rośnie od zera do nn, a ich suma w każdym składniku jest równa nn. To najszybszy test poprawności rozwinięcia. Wzory skróconego mnożenia na (a+b)2(a+b)^2 i (a+b)3(a+b)^3 to po prostu wiersze drugi i trzeci tego samego trójkąta.

Rozwiń (x + 2)⁵ i podaj współczynnik przy x³.

Który wzór wybrać

Cała trudność sprowadza się do dwóch pytań o treść zadania:

kolejność ma znaczenie?powtórzenia dozwolone?wzór
tak, bierzemy wszystkien!n!
tak, bierzemy kk z nnnien!(nk)!\dfrac{n!}{(n-k)!}
tak, bierzemy kk z nntaknkn^k
nie, bierzemy kk z nnnie(nk)\dbinom{n}{k}

Praktyczny test na pierwsze pytanie: zamień miejscami dwa wybrane elementy. Jeśli powstała inna sytuacja — kolejność ma znaczenie.

Ćwiczenia

Pięć typów pytań odpowiada pięciu wzorom z tabeli powyżej — trójkąt Pascala i dwumian Newtona ćwiczy się na przykładach z tamtych sekcji, bo generator pyta tu o liczbę sposobów, a nie o wiersz ani o współczynnik. Prompt z wykrzyknikiem prosi wprost o silnię — pamiętaj o 0!=10! = 1. Permutacje dla danego nn to również n!n!, tylko zadane słowem. Wariacje bez powtórzeń i wariacje z powtórzeniami dostają oba parametry, nn i kk; różnią się tylko tym, czy elementy wolno brać wielokrotnie. Kombinacje pytają o wybór kk z nn bez znaczenia kolejności — i tu warto pamiętać o symetrii. Każda odpowiedź jest liczbą całkowitą.

Ćwiczenia

Rozwiąż zestaw zadań — trudność rośnie z każdym kolejnym. Na końcu zobaczysz wynik i listę pomyłek do powtórki.

Zadanie 1 z 8Punkty: 0
3! =

Częste błędy

  • Dodawanie zamiast mnożenia — kolejne kroki wyboru mnożą liczby możliwości.
  • Mylenie wariacji z kombinacjami — jeśli kolejność nie ma znaczenia, wynik trzeba jeszcze podzielić przez k!k!.
  • Zapomniane 0!=10! = 1 — zwłaszcza w skrajnych przypadkach wzoru na kombinacje.
  • Skracanie silni „na oko"8!5!\tfrac{8!}{5!} to 8768 \cdot 7 \cdot 6, a nie 85\tfrac{8}{5} ani 3!3!.
  • Powtórzenia wzięte z sufitu — o tym, czy elementy mogą się powtarzać, rozstrzyga treść zadania, a nie wygoda wzoru.
  • Wypisywanie przypadków — przy nn większym od pięciu jest ich zwykle za dużo, żeby zdążyć się nie pomylić.
  • Przesunięty wiersz trójkąta — wiersz numer nn ma n+1n+1 wyrazów i numeruje się je od zera, więc (52)\binom{5}{2} to trzeci wyraz piątego wiersza, a nie drugi.
  • Sam współczynnik zamiast całego wyrazu — w rozwinięciu (x+2)5(x+2)^5 przy x3x^3 stoi (52)22=40\binom{5}{2} \cdot 2^2 = 40, a nie samo (52)=10\binom{5}{2} = 10: potęgowana jest cała dwójka, nie tylko xx.

Karta wzorów

Temat: Kombinatoryka

  • Reguła mnożenia

    N=k1k2kmN = k_1 \cdot k_2 \cdot \ldots \cdot k_m

    wybór w kilku niezależnych krokach — liczby możliwości mnożymy

  • Silnia

    n!=123n,0!=1n! = 1 \cdot 2 \cdot 3 \cdot \ldots \cdot n, \qquad 0! = 1

    iloczyn kolejnych liczb naturalnych; 0! z definicji równa się 1

  • Permutacje

    Pn=n!P_n = n!

    liczba ustawień wszystkich n elementów w kolejności

  • Wariacje bez powtórzeń

    Vnk=n!(nk)!=n(n1)(nk+1)V_n^k = \frac{n!}{(n-k)!} = n(n-1)\ldots(n-k+1)

    wybór k z n, kolejność ma znaczenie, bez powtórzeń

  • Wariacje z powtórzeniami

    Vnk=nk\overline{V}_n^k = n^k

    k razy wybieramy spośród tych samych n możliwości

  • Kombinacje

    Cnk=(nk)=n!k!(nk)!C_n^k = \binom{n}{k} = \frac{n!}{k! \, (n-k)!}

    wybór k z n, kolejność NIE ma znaczenia

  • Symetria kombinacji

    (nk)=(nnk)\binom{n}{k} = \binom{n}{n-k}

    wybranie k elementów to to samo, co odrzucenie pozostałych n − k

  • Reguła trójkąta Pascala

    (nk)=(n1k1)+(n1k)\binom{n}{k} = \binom{n-1}{k-1} + \binom{n-1}{k}

    każdy wyraz trójkąta jest sumą dwóch stojących nad nim

  • Dwumian Newtona

    (a+b)n=k=0n(nk)ankbk(a+b)^n = \sum_{k=0}^{n} \binom{n}{k} a^{n-k} b^k

    współczynniki rozwinięcia to n-ty wiersz trójkąta Pascala

012345670200400600800nn!12624120720n!
Wartości silni dla n od 1 do 6. Pierwsze trzy słupki są przy tej skali praktycznie niewidoczne — 6! jest już sto dwadzieścia razy większe od 3!. Tak wygląda wzrost kombinatoryczny.
−10123456704812162024kC(6, k)1615201561C(6, k)
Liczba sposobów wyboru k elementów z sześciu. Rysunek jest symetryczny, bo wybranie k elementów to to samo, co odrzucenie pozostałych 6 − k; najwięcej możliwości daje wybór połowy zbioru.

Najczęstsze pytania

Powiązane artykuły