Перейти к содержимому
RanimusВетвь разума

Элементы комбинаторики

Правило умножения, перестановки, факториал, размещения, сочетания, треугольник Паскаля.

ДоступнаСложность: ★★★☆☆Время: 65 минЗа прохождение: 75 (с первой попытки 90)
Пройти тест Пропустить тему

Пожаловаться

Зачем это нужно

Сколькими способами можно рассадить 5 гостей за столом? Сколько существует четырёхзначных PIN-кодов? Сколько разных команд по 3 человека можно выбрать из класса? Такие вопросы о числе вариантов решает комбинаторика. Она нужна для вычисления вероятностей (сколько исходов благоприятствует событию), в программировании и криптографии (сколько паролей нужно перебрать злоумышленнику), в генетике, логистике, планировании турниров.

Правило умножения

Если первый элемент можно выбрать mm способами, а после этого второй — nn способами, то пару можно выбрать m⋅nm \cdot n способами. Правило распространяется на любое число шагов.

Разобранный пример 1

Сколько существует четырёхзначных PIN-кодов (цифры могут повторяться)?

На каждой из 4 позиций — любая из 10 цифр: 10⋅10⋅10⋅10=10 00010 \cdot 10 \cdot 10 \cdot 10 = 10\,000.

Перестановки. Факториал

Перестановка — способ расположить nn различных элементов в ряд. На первое место — nn вариантов, на второе — n−1n - 1, …, на последнее — 1:

Pn=n!=1⋅2⋅3⋅…⋅n.P_n = n! = 1 \cdot 2 \cdot 3 \cdot \ldots \cdot n.

Запись n!n! читается «эн факториал». По определению 0!=10! = 1.

nn 1 2 3 4 5 6 7 10
n!n! 1 2 6 24 120 720 5040 3 628 800

Факториал растёт очень быстро — быстрее любой степени: колоду из 36 карт можно перемешать более чем 3⋅10413 \cdot 10^{41} способами.

Разобранный пример 2

Сколькими способами 5 гостей могут сесть на 5 стульев в ряд?

5!=1205! = 120.

Размещения

Размещение из nn по kk — упорядоченный набор из kk различных элементов, выбранных из nn. Порядок важен.

Ank=n⋅(n−1)⋅…⋅(n−k+1)=n!(n−k)!.A_n^k = n \cdot (n - 1) \cdot \ldots \cdot (n - k + 1) = \frac{n!}{(n - k)!}.

Разобранный пример 3

Из 10 участников нужно выбрать призёров: 1-е, 2-е и 3-е места. Сколько вариантов?

A103=10⋅9⋅8=720A_{10}^3 = 10 \cdot 9 \cdot 8 = 720.

Сочетания

Сочетание из nn по kk — набор из kk различных элементов, выбранных из nn, без учёта порядка.

Cnk=n!k! (n−k)!=Ankk!.C_n^k = \frac{n!}{k!\,(n - k)!} = \frac{A_n^k}{k!}.

Каждое сочетание из kk элементов можно упорядочить k!k! способами — поэтому размещений в k!k! раз больше, чем сочетаний.

Разобранный пример 4

Сколькими способами можно выбрать команду из 3 человек в классе из 10 человек?

C103=10⋅9⋅83⋅2⋅1=120C_{10}^3 = \frac{10 \cdot 9 \cdot 8}{3 \cdot 2 \cdot 1} = 120. Сравните с примером 3: там порядок важен (места), и вариантов в 3!=63! = 6 раз больше.

Главный вопрос в задаче: важен ли порядок? Если да — размещения (или перестановки), если нет — сочетания.

Задача Порядок Формула
расставить все nn элементов важен n!n!
выбрать kk на разные роли важен AnkA_n^k
выбрать kk в группу не важен CnkC_n^k

Треугольник Паскаля

Числа CnkC_n^k удобно записывать в треугольник Паскаля (его знали ещё китайские и персидские математики за несколько веков до Блеза Паскаля): по краям единицы, а каждое внутреннее число равно сумме двух чисел над ним.

Треугольник Паскаля: строки от n = 0 до n = 6; каждое число — сумма двух чисел над ним; в строке n = 4 стоят числа 1, 4, 6, 4, 1

Свойства: Cnk=Cnn−kC_n^k = C_n^{n-k} (выбрать kk — то же, что выбрать n−kn - k, которых не берём); Cnk=Cn−1k−1+Cn−1kC_n^k = C_{n-1}^{k-1} + C_{n-1}^{k}; сумма чисел в строке nn равна 2n2^n (число всех подмножеств).

Комбинаторика и вероятность

Комбинаторика — главный инструмент для подсчёта исходов в классической вероятности. Например, в лотерее «5 из 36» число всех возможных комбинаций C365=376 992C_{36}^5 = 376\,992. Поэтому вероятность угадать все пять чисел одним билетом равна 1376 992\frac{1}{376\,992} — примерно 0,0003 %.

Разобранный пример 5

В классе 10 мальчиков и 15 девочек. Наугад выбирают двух дежурных. Какова вероятность, что оба — мальчики?

  1. Всего способов выбрать двоих: C252=300C_{25}^2 = 300.
  2. Благоприятных (оба мальчики): C102=45C_{10}^2 = 45.
  3. P=45300=0,15P = \frac{45}{300} = 0{,}15.

Как решать комбинаторные задачи

  1. Определите, что выбирают и из чего: какие элементы, сколько их всего и сколько нужно.
  2. Решите, важен ли порядок (есть ли у выбранных элементов разные роли или места).
  3. Решите, могут ли элементы повторяться (цифры в коде — могут, люди в команде — нет).
  4. Выберите формулу или примените правило умножения по шагам.
  5. Для маленьких задач проверьте перебором — выпишите все варианты.

Типичные ошибки

  • Путать размещения и сочетания: команда (без ролей) — сочетания, призовые места — размещения.
  • Применять правило умножения, когда варианты не зависят от порядка выбора, и получать «лишние» повторы.
  • Считать 0!=00! = 0: на самом деле 0!=10! = 1.
  • Забывать, что в PIN-коде цифры могут повторяться, а в перестановке элементы различны.
  • Вычислять большие факториалы целиком вместо сокращения дроби.

Что дальше