Академический Документы
Профессиональный Документы
Культура Документы
3 Элементы комбинаторики
Задачи, связанные с необходимостью подсчитать
количество возможных комбинаций объектов,
удовлетворяющих определенным условиям,
называются комбинаторными.
Если же A B , то необходимо
использовать обобщение правила суммы –
«принцип включения-исключения».
Факториал – это функция, определенная на
множестве целых неотрицательных чисел, значение
которой равно произведению всех натуральных
чисел от 1 до натурального числа n, в котором
каждое число встречается ровно 1 раз:
def
n! = 1•2• … • (n – 1)•n, n = 1, 2, … ;
def
0! = 1.
Примеры.
1! = 1,
2! = 1•2 = 2,
3! = 1•2•3 = 6,
…………
10! = 1•2•3•4•5•6•7•8•9•10 = 3 628 800,
1 2 3 4 5 7 =
7!
,
(n + 1)! = n + 1.
6 n!
Пусть дано множество A = a1 , a2 , , an .
Зафиксируем элементы этого множества в каком-либо
порядке. Получим некоторую комбинацию элементов
(включающую все элементы множества A ).
Затем переставим местами некоторые элементы ➔
получим новую комбинацию.
Снова переставим местами некоторые элементы, и т. д.
откуда
Pn = n ! (1.2)
Пример.
Сколько существует способов размещения 8
человек на 8 стульях за столом?
n!
Pn = (1.3)
n1 ! n2 ! nk !
Anm = n (n − 1) (n − 2 ) (n − m + 1) (1.4)
или
n!
A m
= . (1.5)
n
(n − m )!
Замечание.
Формулы (1.4) и (1.5) с математической точки зрения
эквивалентны. При этом формула (1.5) выглядит
более «изящной».
С точки зрения алгоритмизации формула (1.4)
оказывается намного предпочтительнее формулы
(1.5). Основная причина:
факториал – очень быстро растущая функция ➔
промежуточные результаты (числитель и/или
знаменатель в (1.5)) могут не поместиться в
разрядную сетку («переполнение»), в то время как
окончательный результат мог бы поместиться.
Пример 1.
Набирая номер телефона, абонент забыл последние
2 цифры и помнит лишь, что эти цифры различны.
Сколько всего комбинаций он может набрать?
Какова вероятность с первого раза набрать
правильный номер?
A nm = n m . (1.6)
Пример.
Символы кодируются с помощью двоичного кода.
Для хранения одного символа используется 1
байт.
Сколько различных символов можно закодировать
таким образом?
Пример (продолжение).
Множество A, элементы которого используются для
составления комбинаций, включает всего 2
элемента: 0 и 1, т. е. n = 2.
Каждая комбинация содержит 8 элементов
(1 байт = 8 бит), т. е. m = 8.
Из (1.6) общее число различных таких комбинаций
равно
A 28 = 28 = 256 .
Пусть дано множество A = a1 , a2 , , an
(все элементы предполагаются различными).
Выделим из множества А некоторое подмножество,
содержащее m элементов, m ≤ n.
Каждое такое подмножество называется
сочетанием из n элементов по m без повторений.
n
или C (n, m ) или .
m
Формула для определения числа сочетаний C nm
получается из (1.5) с учетом следующих
соображений.
Размещения, составленные из одних и тех же
элементов, и отличающиеся только порядком
этих элементов, образуют одно и то же
сочетание. Число таких комбинаций равно m !
Поэтому Anm
C nm = .
m!
Окончательно:
n!
C m
= (1.7)
m ! (n − m )!
n
Пример 1.
На плоскости расположены 8 точек так, что никакие
три точки не лежат на одной прямой.
Сколько прямых можно провести, соединяя точки
попарно?
n!
C n1 , n2 , , nk
= . (1.9)
n1 ! n2 ! nk !
n
Пример.
20 студентов могут сдавать экзамен в любой день из
четырех. Количество студентов, которые могут
подать заявки на первый, второй, третий и
четвертый день, равно, соответственно, n1, n2, n3
и n4 .
Сколькими способами можно разбить студентов на
4 группы для сдачи экзамена при заданных n1, n2,
n3 и n4 ?
2. C nm = C nm−1 + C nm−−11 .
n
3. n
C m
= 2 n
. = (1+1)n
m =0
n
4. (− 1) C nm = 0 .
m
= (1+(–1))n
m =0
n
5. m C m
n = n 2 n −1
.
m =0
k
6. C k
n+ m = m n .
C i
C k −i
i =0
Тождество Коши
Из свойства 2 вытекает эффективный способ
рекуррентного вычисления значений биномиальных
коэффициентов.
Графическая форма представления этого способа
известна как треугольник Паскаля.
m −1 1 1
C m
n = C m
n −1 +C n −1 1 1 2
2
C3
1 2 1 3
3
1 3 3 1
C 4 4
1 4 6 4 1 5
1 5 10 10 5 1 6
………………………… ………………………