Основы комбинаторного анализа. Формулы простого

реклама
Компьютерная дискретная математика
Комбинаторика
Лекции 16-18
Н.В. Белоус
Факультет компьютерных наук
Кафедра ПО ЭВМ, ХНУРЭ
ХНУРЭ, кафедра ПО ЭВМ, Тел. 7021-446, e-mail: [email protected]
Проблемы комбинаторного анализа
 Задачи на перечисления, в которых необходимо
определить количество размещений элементов
конечного
множества,
удовлетворяющих
определенным условиям;
 Задачи о существовании и построении
 Задачи о выборе
2
Магический квадрат
Разместить числа 1,2,3,4,5,6,7,8,9 в виде
квадрата так, чтобы сумма чисел из каждого из
столбцов, строк и диагоналей была одинакова.
4
3
8
9
5
1
2
7
6
3
Шахматные задачи
Задача про ферзей: “Поставить на шахматную
доску наибольшее число ферзей таким образом, чтобы
ни один из них не мог взять другого”.
Больше, чем 8 ферзей на доску поставить не удастся.
Задачу можно решить прямим перебором вариантов,
и окажется, что всего есть 92 варианта такого
размещения.
Ф
8
Ф
7
6
Ф
Ф
5
Ф
4
Ф
3
Ф
2
Ф
1
a
b
c
d
e
f
g
h
(a, 6), (b, 3), (c, 5), (d, 8), (e, 1), (f, 4), (g, 2), (h, 7).
(a, 6), (b, 1), (c, 5), (d, 2), (e, 8), (f, 3), (g, 7), (h, 4).
4
Основные определения
Если М – конечное множество, которое
содержит n элементов, то будем его называть nмножеством и писать |М|=n.
Подмножество АМ, которое содержит k
элементов, называется k-подмножествoм.
n-множество
X
называется
линейноупорядоченным, если каждому его элементу x
взаимно
однозначно
соответствует
номер
i{1,2,..,n}.
Взаимно-однозначное отображение f nмножества М нa себя называется подстановкой
(n-подстановкой).
5
Правило суммы
6
Правило суммы
Если первая задача может быть сделана n1
способами, а вторая – n2 способами, и если эти
задачи не могут быть сделаны одновременно, то
существует
n1 + n2
способов сделать любую задачу.
7
Правило суммы
Можно применять правило суммы более, чем
для 2 множеств.
Пусть задачи T1, T2, …,Tm могут быть сделаны n1,
n2, …, nm способами соответственно, и никакие 2 из
этих задач не могут выполняться одновременно.
Тогда количество способов выполнить любую из
задач определяется как
n1+n2+…+nm
8
Правило суммы
Пример
В городе находятся 4 технических ВУЗа, 1
медицинский и 2 гуманитарных. Сколькими способами
можно
получить
высшее
образование
по
государственному набору в данном городе?
Решение:
Поскольку государственный набор предполагает
бесплатное обучение только в одном ВУЗе, применимо
правило суммы, по которому число способов N выбора
ВУЗа определяется как: N = 4+1+2 = 7.
9
Правило суммы
Если множество М – это объединение множеств
М1, М2, …, Мk, которые не пересекаются попарно
(MiMj=), тогда количество элементов множеств
связаны соотношением
| M | = | М1 | +…+ | Мk |
Пусть объект a1 может быть выбран m1
способами, объект а2 - m2 способами и т. д., объект ak mk способами. Тогда выбор объекта a1 или а2 и т.д.,
или ak может быть сделан m1 +m2+...+mk способами.
Пример
Раньше из Харькова в Москву в течение суток
отправлялось 10 поездов, 3 автобуса и 2 самолета.
Всего способов выехать из Харькова в Москву:
10+3+2
10
Правило
произведения
11
Правило произведения
Пусть задача может быть разбита на 2 подзадачи.
Если первая подзадача может быть сделана n1
способами, а вторая – n2 способами, то существует
n1 ∙ n2
способов сделать эту задачу.
12
Правило произведения
Если М1, М2, …, Мk – конечные множества и
М=М1М2…Мk – их декартово произведение, то
| M | = | М1 |  …  | Мk |
Пусть объект a1 выбирается m1 способами, а2 –
m2 способами, и т.д., объект ak – mk способами, и
пусть выбор объекта a1 не влияет на число способов
выбора объектов a2,а3,...ak, выбор объекта а2 не влияет
на число способов выбора объектов a3,а4 ...аk, т.д.
Тогда выбор упорядоченного множества объектов
(a1,a2,...,ak) в указанном порядке можно осуществить
m1 · m2 · m3 ·... · mk способами.
Пример
Имеется 17 юношей и 21 девушка. Они могут
составить
17·21 = 357 танцующих пар.
13
Правило произведения
Пример
Имеются 4 научные темы, 3 студента и 2
преподавателя.
Исследовательскую
группу,
занимающуюся одной темой, составляет один студент
и один преподаватель. Сколько существует
комбинаций выбора различных тем и различных
исследовательских групп?
Решение:
Так как одна исследовательская группа может вести
только одну тему, применимо правило произведения,
по которому число комбинаций равно 4·3·2=24.
14
Правило произведения
Пример
Сколько различных битовых строк длинной 7
можно составить?
Каждый из 7 бит может быть выбран двумя
способами (0 или 1).
Получаем:
27=128
различных битовых строк длинной 7.
15
Принцип Дирихле
16
Принцип Дирихле
Если k+1 или более объектов расположены в k
коробках, тогда есть по крайней мере одна коробка,
содержащая два или более из объектов.
17
Реализация принципа Дирихле
Если n объектов расположены в k коробках, то как
минимум одна коробка содержит как минимум n/k
объектов.
Доказательство:
Предположим, что ни одна коробка не содержит
более чем [n/k]–1 объектов. Общее количество
элементов в коробках
k([n/k]-1)<k(((n/k)+1)-1)=n
Причем, [n/k]<(n/k)+1.
18
Принцип Дирихле
Пример
Сколько человек из 100 родились в одном месяце?
Среди 100 человек есть по крайней мере [100/12]
=9, которые родились в одном и том же месяце
19
Перестановки и
размещения
20
Перестановки
Пусть М={а1,а2,...,аn} – фиксированное
множество.
Упорядоченные
k-подмножества
(b1,b2,...,bk) множества M называются его
kперестановками.
Иными
словами, k-перестановка – это
размещение в определенном порядке k элементов из
множества М.
21
Размещения
Если в перестановке участвуют все элементы
множества (n-перестановка), то используют термин
перестановка и обозначается Pn .
Два размещения из n по k различны, если
они состоят из различных элементов или из
одинаковых, но расположенных в разном порядке.
k-перестановки множества из n элементов
называются размещениями из n по k элементов и
обозначается Ank .
22
Факториал
Компактное представление
последовательности целых чисел.
для
умножения
Применяем n! Для представления произведения
n·(n-1)·(n-2)·...·(2)·(1)
гле n – некоторое целое число.
0!=1
23
Размещения без повторений
Обозначим через Ank количество
k–
перестановок n-множества М и найдем это
число.
n!
k
An  n(n - 1)  ...  (n - k  1) 
( n  k )!
Пример
М = {1,2,3}.
2-перестановки
(1,2);(2,1);(1,3);(3,1);(2,3); (3,2);
3-перестановки
(1,2,3);(1,3,2);(2,1,3); (2,3,l); (3,1,2);(3,2,1).
24
Размещения без повторений
Пример
Из группы в 25 человек требуется выбрать
старосту, заместителя старосты и профорга.
Сколько вариантов выбора руководящего состава
группы?
Решение: Старосту можно выбрать одним из
25 способов. Поскольку выбранный староста не
может быть своим заместителем, то для выбора
заместителя старосты остается 24 варианта.
Профорга выбирают одним из 23 способов. Всего
вариантов:
25!
23  24  25 
 13800
22!
25
Перестановки без повторений
Ann
Если n=k, тогда
- количество всех
способов упорядочения этих элементов:
Pn  Ann  n!
Пример
М={1,2,3}
P3= 3!=3·2·1=6
26
Перестановки без повторений
Пример
На кафедре защищаются дипломники А, В, С и D,
причем А и В имеют комплексную тему и В не
может защитить диплом после А. Сколькими
способами можно определить очередность защит?
Решение:
Так как В и А защищают одну тему, необходимо
рассматривать перестановки из трех элементов
Р3=3!=1∙2∙3=6
27
Круговые перестановки
Сколькими способами можно рассадить 5 детей за
круглым и за квадратным столом?
Рассмотрим случай, когда дети сидят за квадратным
столом:
A
C
После применения формулы для
количества перестановок получаем:
P(5,5) = 5!
нахождения
28
Круговые перестановки
Рассмотрим случай, когда дети
круглым столом :
A
(n-1)!
A
существует
C
D
D
C
B
A
D
A
Для n элементов
перестановок.
B
C
C
D
D
B
C
B
A
сидят за
круговых
29
Перестановки с повторениями
k-перестановкой с повторениями n-множества А
или k-перестановкой с повторениями из n элементов
будем называть упорядоченный набор k элементов
(bl,...bk) из множества М.
Пример
A={а,b,с}, |A|=3, Ma={a,a,...}, Mb={b,b,..}, Mc ={с,с,...}.
6-перестановками с повторениями из трех
элементов будут:
(а,b,с,a,a,a), (b,b,c,c,a,b), (c,b,b,c,a,a) и т.д.
30
Перестановки с повторениями
Две k-перестановки считаются равными, если
они совпадают как своими элементами, так и
порядком их расположения; и различными, если
они отличаются либо элементами, либо порядком
их расположения.
Пример
М – множество букв разрезной азбуки (все
буквы в азбуке строчные).
Различными 4-перестановками будут:
(м,а,м,а),(р,а,м,а), (н,а,а,а), (а,н,а,а), (а,а,а,н)
и т. д.
31
Размещения с неограниченными повторениями
k
n
A n
k
Пример
Сколько строк длиной n может быть
сформировано из букв английского алфавита?
По правилу произведения:
26n
строк длинной n.
32
n-перестановки из n-множества с
заданной спецификацией
P ( n ; n1 , n2 ,...,nk )  C  C
n1
n
n2
n  n1
n!
 ... C 
n1 ! n2 !...nk !
nk
nk
Пример
Сколько слов можно составить из букв слова
“Миссисипи” (слова могут не иметь смысла)?
“м” встречается 1 раз,
“и” – 4 раза,
“с” -3 раза,
“п” - 1 раз
Р(9;1,4,3,1) =9!/(1!·4! ·3! ·1!)= 2520.
33
Сочетания
34
Сочетания
k-сочетаниями множества М (короче –
сочетаниями) называются неупорядоченные kподмножества {ai,аj,...,аs} множества M.
Два k-сочетания различны тогда и только
тогда, когда они отличаются хотя бы одним
элементом.
Пример
Различными 2-сочетаниями множества
М = {l,2,3 }:
{1,2},{1,3},{2,3}.
35
Сочетания
Количество всех различных сочетаний из n
k
элементов по k обозначают C n :
k
A
n!
k
n
Cn 

k ! ( n  k )! k !
36
Сочетания
Пример
Пусть C = {a, b, c, d}
Количество 2-сочетаний из C равно
4 3 2 1
C 
6
( 4  2 )!2!
2
4
6 подмножеств: {a, b}, {a, c}, {a, d}, {b, c}, {b, d}, {c, d}.
37
Сочетания
Пример
Комитет, который разрабатывает курс по дискретной
математики, должен состоять из 3 преподавателя
дискретной математики математики и 4 программиста.
Есть 9 преподавателей дискретной математики и 11
программистов.
Сколько существует способов сделать это?
После применения правила произведения получаем:
9! 11!

 84  330  27720
C C 
3!6! 4!7!
3
9
4
11
38
Свойства сочетаний
C C
nk
n
k
n
C C
k 1
n 1
k
n
C
k
n 1
C  C  ...  C  2
0
n
1
n
n
n
n
39
Сочетания с
повторениями
40
Сочетания с повторениями
Сочетаниями с повторениями из n элементов
по k называются неупорядоченные k-подмножества
множества М=MaMb…Mt,
где MiMj=,
is, i,j{a,b,…,t},
Ma={a,a,...},
Mb={b,b,..},…,Mt={t,t,...}
|{a,b,c,…,t}|=n.
41
Сочетания с повторениями
Пример
А={a,b,с},
6-сочетаниями с
элементов будут:
{а,b,а,а,а,а},
{b,b,a,c,a,a},
{с,с,с,с,b,b} и т.д.
повторениями
из
трех
42
Сочетания с повторениями
Имеются предметы п различных видов. Число элементов
каждого вида неограниченно. Сколько существует расстановок
длины k, если не принимать во внимание порядок элементов?
Такие расстановки называют сочетаниями с повторениями,
количество и обозначение которых следующее:
C C
k
n
k
n  r 1

n  k  1!

k !n  1!
43
Сочетания с повторениями
Пример
У преподавателя есть карточки на четыре
различных варианта. Сколькими способами можно
выбрать шесть карточек?
98 7
 84
C C  C 
1 2  3
6
4
6
9
3
9
44
Свойства сочетаний с неограниченными
повторениями
k
Cn
k
Cn


k
C n k 1
k 1
Cn
k
 C n1
45
Сочетания и размещения
«с» и «без» повторений
Тип
Размещение
Сочетание
Есть ли
повторения?
Формула
нет
n!
( n  r )!
n!
( n  r )! r !
нет
Размещение
да
nr
Сочетание
да
n  r  1  !
r ! n  1  !
46
Бином Ньютона
47
Биномиальные коэффициенты
Пусть n и r неотрицательные натуральные числа,
причем rn. Тогда
n r
n
C
n!
n!


( n  r )!n  ( n  r )! ( n  r )!r!
C C
r
n
nr
n
Эти числа обычно называют биномиальными
коэффициентами.
48
Бином Ньютона
(a+b)4=(a+b)(a+b)(a+b)(a+b)
Каждое слагаемое в разложении является
результатом выбора а или b в каждом сомножителе
(a+b) и последовательного их перемножения
Пример
Найти коэффициент при a3b
4!
C 
4
3!1!
3
4
49
Бином Ньютона
Биномиальная теорема:
Для произвольного положительного целого числа n
справедливы равенства:
n
( a  b )  C  a  b
n
r 0
r
n
r
nr
n
 C  a
r 0
r
n
nr
b
r
50
Бином Ньютона. Пример
Получить разложение
( 2 x  3 y 2 )3 
C30 ( 2 x )3  C31 ( 2 x )2  ( 3 y 2 )1 
 C32 ( 2 x )1  ( 3 y 2 )2  C33 ( 3 y 2 )3 
8 x  3  x  3 y  3  2 x  9 y  27 y 
3
2
2
4
6
8 x3  36 x 2 y 2  54 xy 4  27 y6
51
n
Пример: Доказать тождество
C
k 0
k
n
2
n
Решение: Воспользуемся формулой бинома Ньютона, в
которой положим, а = 1 и b = 1, тогда
n
( 1  1 )   C 1 1
n
k 0
k
n
k
nk
52
Треугольник Паскаля
C 00
C 10
C 20
C 30
C 40
C 50
C 21
C 31
C 41
C 51
C11
C 22
C 32
C 42
C 52
C 33
C 43
C 53
C 44
C 54
C 55
C nr 11
C nr 1


C nr
Каждый из внутренних элементов треугольника
равен сумме двух элементов расположенных над ними.
53
Треугольник Паскаля
(n+1) ряд треугольника состоит из коэффициента
разложения (a+b)n
1
1
1
1
2
3
1
1
1
3
6
4
5
1
10
1
4
10
1
5
1
54
Формула включений
и исключений
55
Формула включений и исключений
Пусть даны N объектов (предметов), каждый
из которых может обладать или не обладать одним
или несколькими из свойств a1,a2,...,an .
/
Через ai обозначим отсутствие свойства ai;
через N(a)
–
количество
предметов,
обладающих свойством а (а – любое из свойств аi
или ai/ );
через N(a,b,c,…,k) – количество предметов,
обладающих попарно различными свойствами
а,b,c,..,,k
56
Формула включений и исключений
Если все свойства ai попарно не
совместимы (т.е. N(aiak)=0 при i k), то
формула имеет вид:
/
N ( a1
/
...an
) N 
 N ( ai )
1 i  n
57
Формула включений и исключений
N ( a )  N  N ( ai )
/ /
N ( a1 a2 )  N  N ( a1 )  N ( a2 )  N ( a1a2 )
Тогда, очевидно,
/
i
т.к. при вычитании N(а1) и N(a2) из общего числа
предметов число N(ala2) вычитается дважды.
58
Формула включений и исключений
N ( a a a )  N  N ( a1 )  N ( a2 )  N ( a3 ) 
/
1
/
2
/
3
N ( a1a2 )  N ( a1a3 )  N ( a3a2 )  N ( a1a2 a3 )
a1  a2
a1
a2
a1  a3
a2  a3
a1  a2  a3
a3
59
Формула включений и исключений
При произвольном n справедлива формула
включений и исключений:
N ( a a ...a )  N 
/
1
/
2
/
n
 N( a a
1i  j  n
i
 N( a ) 
i
1i  n
)  ...  ( 1 ) N ( a1a2 ...an )
n
j
60
Формула включений и исключений
Сколько положительных целых чисел,
превышающих 1000, делятся на 7 или на 11?
не
A B  A  B  A B
A
B
A B
 1000   1000   1000 






7
11
7

11

 
 

 142  90  12
 220
A  142
делится на 7
A  B  12
B  90
делится на 11
61
Формула включений и исключений. Пример
В общей сложности 1232 студента выбрали курс на
испанском языке, 879 – на французском языке, и 114 –
на русском языке. Далее, 103 выбрали курсы и на
испанском и на французском языке, 23 –на испанском и
русском языке и 14 – на французском и русском языке.
Если 2092 студента выбрали по крайней мере один из
испанского, французского и русского языков, то сколько
студентов выбрали курс на всех трех языках?
Решение
F  879
S  F  103
SF R  S  F  R  SF 
R  114
S  R  23
 S  R  RF  S F  R
S  1232 F  R  14
2092  1232  879  114  103  23  14  S  F  R
S  F  R  2092
S F  R 7
7 студентов выбрали курс на всех трех языках.
62
Рекуррентные
соотношения
63
Рекуррентные соотношения
При решении многих комбинаторных задач
используется метод сведения данной задачи к
аналогичной задаче, касающейся меньшего числа
предметов.
Такой метод называется методом рекуррентных
соотношений.
Пользуясь
рекуррентным
соотношением можно свести задачу об n предметах к
задаче об (n–1) предметах, потом об (n–2) предметах
и т.д. Последовательно уменьшая число предметов,
доходим до задачи, которую уже легко решить. Во
многих случаях удается получить из рекуррентного
отношения
явную
формулу
для
решения
комбинаторной задачи.
64
Рекуррентные соотношения
Пример рекурсивно заданной функции
a1  1
a k  a k 1  k




Непосредственное задание функции
n( n  1)
an 
2
65
Линейные рекуррентные соотношения
Рекуррентное соотношение вида
an=b1(n)an-1+b2(n)an-2+b3(n)an-3+…+bp(n)ap
называется
линейным
рекуррентным
соотношением порядка р , т.к. аn выражается через р
элементов вида ai ( i  1, p )
Соотношение линейно-рекуррентное, т.к. показатель
каждой степени аі равен 1.
66
Рекуррентные соотношения
Примеры
1) an  3an31  4an2
- нелинейное, т.к. аn-1 в 3-ей
степени
- линейное
2) an  3n an1  n  an2
3) an+2=an·an+1-3an+1+1 - нелинейное рекуррентное
соотношение порядка 2, т.к. зависит от an и an+1
4) an+3=6an·an+2+an+1 - нелинейное рекуррентное
соотношение порядка 3, т.к. зависит от an, an+1 и an+2
5) an+2=3an+1-2an
- линейное рекуррентное
соотношение порядка 2, т.к. зависит от an и an+1
3
67
Линейные рекуррентные соотношения
Решением рекуррентного соотношения является
последовательность,
при
подстановке
которой
соотношение тождественно выполняется.
Решение рекуррентного соотношения р-го порядка
называется общим, если оно зависит от р произвольных
постоянных С1,С2,…,Ср и путем подбора этих
постоянных можно получить любое решение данного
соотношения.
Пример
an+2=3an+1-an
an=2n; an+1=2n+1 ; an+2=2n+2
2n+2=3·2n+1-2·2n=3·2n·21-2·2n
2n- решение данного рекуррентного соотношения
68
Линейные рекуррентные соотношения с
постоянными коэффициентами
Линейное рекуррентное соотношение вида
an=b1an-1+b2an-2+b3an-3+…+bpaр, bp0
c постоянными коэффициентами ci при 1іp
называется линейным однородным рекуррентным
соотношением с постоянными коэффициентами
р.
69
Числа Фибоначчи
70
Последовательность (числа) Фибоначчи
Числовая последовательность, в которой каждое
число равно сумме двух предыдущих, называется
последовательностью
Фибоначчи
(числами
Фибоначчи).
F(n+1) = F(n) + F(n–1).
k
C
Выражение чисел Фибоначчи через n имеет вид:
F(n) = Cn01  Cn1  Cn21  ... 
где p 
n1
______)
n1
,
2
если n нечетно (р - целая часть числа
2
n
p  , если n четно
2
71
Числа Фибоначчи. Пример
Пара кроликов приносит раз в месяц приплод из двух
крольчат (самки и самца), причем новорожденные
крольчата через 2 месяца после рождения уже приносят
приплод. Сколько кроликов появится через год, если в
начале года была одна пара кроликов?
Решение:
Через месяц будет 2 пары кроликов.
Через 2 месяца приплод даст только первая пара
кроликов и получится 3 пары.
Через 3 месяца приплод дадут и исходная пара, и
пара, появившаяся 2 месяца тому назад. Всего будет 5
пар кроликов.
72
Числа Фибоначчи. Пример
Fn – количество пар кроликов через n месяцев.
Через n+1 месяцев будет Fn пар и еще столько
новорожденных пар кроликов, сколько было в конце
месяца n-1, т.е. Fn-1.

Fn+1= Fn +Fn-1
По условию: F0=1, F1=2 
F2=1+2=3
F3=2+3=5
F4=3+5=8 и т.д.
где Fn – числа Фибоначчи
73
Отношения вида an+2=b1an+1+b2an
Решение данных отношений основано на
следующих утверждениях:
1) a1(n) и a2(n) – решения данного
рекуррентного отношения, тогда для любых чисел
А и В последовательность an=А·a1(n)+В·a2(n) также
решение этого отношения.
2) Если число r1 – корень квадратного
уравнения r2=b1r+b2 , то последовательность 1, r, r2,
... , rn-1, ... есть решение рекуррентного отношения
an+2=b1an+1+b2an
74
Решение отношений вида an+2=b1an+1+b2an
1) Составляем квадратное уравнение r2=b1r+b2,
которое является характеристическим для данного
отношения.
2) Если квадратное уравнение имеет 2
различных корня r1 и r2, то общее решение
отношения an+2=b1an+1+b2an имеет вид:
an  C1  r
n 1
1
 C2  r
n 1
2
 ... 
75
Общее решение для рекуррентного
отношения для чисел Фибоначчи
Fn= Fn-1 +Fn-2
Характеристическое уравнение:
r2=r+1
Корни уравнения:
1 5
числа r1  2
1 5
и r2 
2
Общее решение:
1 5 n
1 5 n
Fn  C1  (
)  C2  (
)
2
2
76
Скачать