Matematyka Dyskretna - pliki.andrix.pl file4 Rozdział 1. Kombinatoryka 1.2 Ciagi¸...

28
Matematyka Dyskretna Andrzej Szepietowski 17 marca 2003 roku

Transcript of Matematyka Dyskretna - pliki.andrix.pl file4 Rozdział 1. Kombinatoryka 1.2 Ciagi¸...

Matematyka Dyskretna

Andrzej Szepietowski

17 marca 2003 roku

Rozdział 1

Kombinatoryka

1.1 Zasada podwójnego zliczania

Zasada podwójnego zliczania jest bardzo prosta. Oto ona:

Jezeli elementy jakiegos zbioru sa zliczane na dwa sposoby, to wynik obu zliczen jest takisam.

Zastosujemy te zasade do udowodniena nastepujacego lematu:

Lemat 1.1 (O usciskach dłoni) Przypuscmy, ze na przyjeciu czesc osób wita sie przezuscisk dłoni. Wtedy liczba osób, które uscisneły nieparzysta liczbe dłoni jest parzysta.

Bardziej formalnie lemat ten mozna formułowac za pomoca grafów. Rozwazmy graf,którego wierzchołkami sa osoby na przyjeciu, a krawedzie łacza te osoby, które uscisnełysobie dłonie. Mamy.

Lemat 1.2 Niech G = (V, E), bedzie dowolnym grafem z m = |E| krawedziami. Wtedy

v∈V

d(v) = 2m,

gdzie d(v) oznacza stopien wierzchołka v, czyli liczbe krawedzi wychodzacych z v

Dowód: Zliczmy konce wszystkich krawedzi na dwa sposoby. Najpierw sumujemy powszystkich wierzchołkach v ile krawedzi ma koniec w wierzchołku v. Otrzymamy sume∑

v∈V d(v). Nastepnie dla kazdej krawedzi zliczamy jej dwa konce. Otrzymamy wynik2m. Teza wynika z zasady podwojnego zliczania. 2

Poniewaz suma∑

v∈V d(v) jest parzysta, wiec liczba nieparzystych składników jestparzysta. Mamy wiec:

Lemat 1.3 (O usciskach dłoni, druga wersja) W kazdym grafie liczba wierzchołków nie-parzystego stopnia jest parzysta.

3

4 Rozdział 1. Kombinatoryka

1.2 Ciagi

Zastanówmy sie, ile ciagów długosci k mozna utworzyc z elementów zbioru zawierajacegon symboli. Jezeli zbiór symboli zawiera dwa elementy:

a, b,

to mozna utworzyc dwa ciagi długosci jeden:

(a), (b),

cztery ciagi długosci dwa:

(a, a), (a, b), (b, a), (b, b).

Aby uzyskac ciagi długosci trzy, postepujemy w nastepujacy sposób: bierzemy czteryciagi długosci dwa i najpierw do kazdego z nich dopisujemy na poczatku a. Otrzymujemyw ten sposób komplet:

(a, a, a), (a, a, b), (a, b, a), (a, b, b).

Zauwazmy, ze sa to wszystkie ciagi długosci trzy z pierwsza litera a. Potem do tychsamych czterech ciagów długosci dwa dopisujemy na poczatku symbol b i otrzymujemykomplet:

(b, a, a), (b, a, b), (b, b, a), (b, b, b).

Komplety te sa rozłaczne i oba zawieraja rózne ciagi. Razem tworza zbiór wszystkichciagów długosci trzy:

(a, a, a), (a, a, b), (a, b, a), (a, b, b), (b, a, a), (b, a, b), (b, b, a), (b, b, b).

Postepujac podobnie, mozemy otrzymac szesnascie ciagów długosci cztery.

Twierdzenie 1.4 Liczba ciagów długosci k o elementach ze zbioru {a, b} wynosi 2k.

Dowód przez indukcje. Jak juz pokazano, sa dwa ciagi długosci jeden.Załózmy teraz, ze liczba ciagów długosci k wynosi 2k i zauwazmy, ze wszystkich

ciagów długosci k + 1 jest dwa razy wiecej. Jest 2k ciagów z pierwszym elementem a i2k ciagów z pierwszym elementem b. Razem mamy 2 ·2k = 2k+1 ciagów długosci k +1.2

Jezeli zbiór symboli zawiera n elementów, to powtarzajac powyzsze rozumowanie,mozemy sie przekonac, ze istnieje n ciagów długosci jeden, n2 ciagów długosci dwa iogólnie ciagów długosci k + 1 jest n razy wiecej niz ciagów długosci k. Zachodzi zatemtwierdzenie.

Twierdzenie 1.5 Liczba ciagów długosci k o elementach ze zbioru n-elementowego wy-nosi nk.

1.3. Funkcje 5

1.3 Funkcje

Policzmy teraz, ile jest funkcji ze zbioru A w zbiór B. Przypuscmy, ze zbiór A zawiera kelementów:

1, . . . , k.

Kazda funkcje f z A w B mozna przedstawic jako ciag

(f(1), f(2), . . . , f(k)).

Ciag ten jest długosci k, a jego elementy sa wziete ze zbioru B. Zauwazmy, ze kazdejfunkcji odpowiada jeden ciag, i na odwrót, kazdy ciag

(b1, b2, . . . , bk)

opisuje jedna funkcje. Mianowicie funkcje, która dla kazdego i przypisuje wartoscf(i) = bi.

Przykład 1.6 Jezeli A składa sie z czterech elementów:

A = {1, 2, 3, 4},

a B składa sie z trzech elementów:

B = {1, 2, 3},

to ciag(2, 2, 2, 2)

opisuje funkcje stała, która w całej swojej dziedzinie przyjmuje wartosc 2, a ciag

(1, 2, 3, 3)

opisuje funkcje f , która przyjmuje nastepujace wartosci:

f(1) = 1, f(2) = 2, f(3) = 3, f(4) = 3.

Z powyzszego wynika, ze funkcji ze zbioru A w zbiór B jest tyle samo co ciagów długoscik = |A| z elementami ze zbioru B. Udowodnilismy wiec ponizsze twierdzenie.

Twierdzenie 1.7 Jezeli zbiór A zawiera k elementów, a zbiór B zawiera n elementów, toliczba funkcji ze zbioru A w zbiór B wynosi nk.

1.4 Ciagi bez powtórzen

Policzmy teraz, ile jest ciagów bez powtórzen, czyli ciagów róznowartosciowych. Jezelielementy bierzemy ze zbioru trzyelementowego

{1, 2, 3},

6 Rozdział 1. Kombinatoryka

to mozemy utworzyc trzy ciagi jednoelementowe:

(1), (2), (3),

szesc róznowartosciowych ciagów dwuelementowych:

(1, 2), (1, 3), (2, 1), (2, 3), (3, 1), (3, 2)

oraz szesc ciagów trójelementowych:

(1, 2, 3), (1, 3, 2), (2, 1, 3), (2, 3, 1), (3, 1, 2), (3, 2, 1).

Nie ma, oczywiscie, dłuzszych ciagów róznowartosciowych utworzonych z elementówzbioru {1, 2, 3}.

Twierdzenie 1.8 Jezeli elementy wybieramy ze zbioru n-elementowego A, to liczba ciagówk-elementowych bez powtórzen, które mozna wybrac z tego zbioru, wynosi:

n(n − 1) · · · (n − k + 1).

W tym wyrazeniu mamy iloczyn k kolejnych liczb, poczynajac od (n − k + 1), a konczacna n.

Dowód. Jezeli budujemy ciag bez powtórzen, to na pierwszy element ciagu mozemy wy-brac kazdy z n elementów zbioru A, na druga pozycje w ciagu mozemy wybrac juz tylkojeden z n− 1 elementów (wszystkie poza tym, który został wybrany na pierwszy elementciagu) i tak dalej, na kazda kolejna pozycje mamy o jeden element do wyboru mniej. 2

Zauwazmy, ze jezeli k > n, to n(n− 1) . . . (n− k + 1) = 0, co jest zgodne z tym, zew takim przypadku nie mozna utworzyc zadnego k-elementowego ciagu bez powtórzenz elementami ze zbioru A.

1.5 Permutacje

Permutacje to ciagi bez powtórzen długosci n, wybierane ze zbioru n-elementowego. Naprzykład, mamy dwie permutacje dwuelementowe:

(1, 2), (2, 1),

oraz szesc permutacji trzyelementowych:

(1, 2, 3), (1, 3, 2), (2, 1, 3), (2, 3, 1), (3, 1, 2), (3, 2, 1).

Zgodnie z twierdzeniem 1.8 liczba permutacji w zbiorze n-elementowym wynosi:

n(n − 1)(n − 2) . . . 1,

czyli jest równa n!.

1.5. Permutacje 7

Funkcja silnia n! okreslona jest dla n > 0 w nastepujacy sposób:

n! =

n∏

i=1

i

Dodatkowo przyjmujemy 0! = 1. Mamy wiec

1! = 1, 2! = 1 · 2 = 2, 3! = 1 · 2 · 3 = 6, 4! = 1 · 2 · 3 · 4 = 24.

Wartosci funkcji silnia szybko rosna, na przykład:

5! = 120, 10! = 3 628 800, 20! ≈ 2433 · 1015.

Dla przyblizonego obliczania silni korzysta sie ze wzoru Stirlinga:

n! ≈ e−nnn√

2πn. (1.1)

Dla kazdego n zachodza równiez nastepujace oszacowania:

√2πn

(n

e

)n

≤ n! ≤√

2πn(n

e

)n

en12 . (1.2)

Dowody wzoru Stirlinga oraz powyzszych oszacowan wychodza poza zakres tego podrecznika.Czasami uzywa sie innej definicji permutacji. Mianowicie permutacja n-elementowa

to dowolna funkcja róznowartosciowa ze zbioru {1, 2, . . . , n} na ten sam zbiór. Na ozna-czenie permutacji π uzywa sie zapisu:

(

1 2 . . . nπ(1) π(2) . . . π(n)

)

.

Przykład 1.9 Permutacja:

π =

(

1 2 3 42 1 4 3

)

jest funkcja, która przyjmuje nastepujace wartosci:

π(1) = 2, π(2) = 1, π(3) = 4, π(4) = 3.

Dwie permutacje n-elementowe mozna składac tak, jak składa sie funkcje. Złozenie π1 ◦π2 permutacji π1 i π2 okreslone jest wzorem:

π1 ◦ π2(x) = π1(π2(x)).

Na przykład:(

1 2 3 42 1 4 3

)

◦(

1 2 3 43 2 1 4

)

=

(

1 2 3 44 1 2 3

)

.

Zbiór wszystkich permutacji na zbiorze {1, . . . , n} z działaniem złozenia ma nastepujacewłasnosci:

8 Rozdział 1. Kombinatoryka

• Złozenie permutacji jest łaczne. To znaczy, dla kazdych trzech permutacji π, ρ, σ:

π ◦ (ρ ◦ σ) = (π ◦ ρ) ◦ σ.

• Wsród permutacji istnieje identycznosc id, czyli permutacja, która kazdemu x zdziedziny przypisuje wartosc id(x) = x. Identycznosc jest elementem neutralnymskładania permutacji, poniewaz dla kazdej permutacji π:

id ◦ π = π ◦ id = π.

• Dla kazdej permutacji π istnieje permutacja odwrotna (funkcja odwrotna) π−1,spełniajaca warunek:

π ◦ π−1 = π−1 ◦ π = id.

Powyzsze zaleznosci oznaczaja, ze zbiór wszystkich permutacji na zbiorze {1, . . . , n} zdziałaniem składania permutacji stanowi grupe.

1.6 Podzbiory

Policzmy teraz, ile podzbiorów ma skonczony zbiór n-elementowy. Jezeli zbiór składasie z trzech elementów:

{a, b, c},to mozemy łatwo wypisac wszystkie jego podzbiory:

∅, {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, {a, b, c}.

Tych podzbiorów jest osiem. Kazdy zbiór trzyelementowy posiada osiem podzbiorów,poniewaz nie ma znaczenia, jak nazywaja sie elementy zbioru. Zbiór pusty ma tylko jedenpodzbiór: zbiór pusty. Jezeli zbiór zawiera jeden element {a}, to ma dwa podzbiory:

∅, {a},

a jezeli zbiór zawiera dwa elementy {a, b}, to ma cztery podzbiory:

∅, {a}, {b}, {a, b}.

Rozwazmy teraz ogólnie podzbiory zbioru

{1, 2, 3, . . . , n}.

Z kazdym podzbioremA ⊂ {1, 2, 3, . . . , n}

jest zwiazana jego funkcja charakterystyczna, okreslona nastepujacym wzorem:

χA(i) =

{

1, gdy i ∈ A,0, gdy i /∈ A.

1.7. Podzbiory k-elementowe 9

Dziedzina funkcji χA jest zbiór {1, . . . , n}, a przeciwdziedzina zbiór {0, 1}. Zauwazmy,ze kazdemu podzbiorowi odpowiada jedna funkcja charakterystyczna, i na odwrót, jezeliwezmiemy dowolna funkcje:

χ : {1, . . . , n} → {0, 1},

to wyznacza ona zbiór:A = {i | χ(i) = 1}.

Przykład 1.10 Dla n = 5 funkcja charakterystyczna χA zbioru A = {2, 3, 5} jest opisa-na przez ciag (0, 1, 1, 0, 1), a ciag (1, 0, 1, 1, 0) opisuje funkcje charakterystyczna zbioru:{1, 3, 4}.

Z powyzszych rozwazan wynika, ze liczba podzbiorów zbioru n-elementowego jest rów-na liczbie funkcji ze zbioru {1, . . . , n} w zbiór {0, 1}. Czyli na podstawie twierdzenia 1.7mamy twierdzenie ponizsze.

Twierdzenie 1.11 Kazdy zbiór n-elementowy ma 2n podzbiorów.

1.7 Podzbiory k-elementowe

Zastanówmy sie teraz nad podzbiorami okreslonej mocy. Mówimy, ze zbiór jest mocy n,jezeli zawiera n elementów. Dla zbioru czteroelementowego

{1, 2, 3, 4},

mamy jeden podzbiór pusty (zeroelementowy), cztery podzbiory jednoelementowe:

{1}, {2}, {3}, {4},

szesc podzbiorów dwuelementowych:

{1, 2}, {1, 3}, {1, 4}, {2, 3}, {2, 4}, {3, 4},

cztery podzbiory trzyelementowe:

{1, 2, 3}, {1, 2, 4}, {1, 3, 4}, {2, 3, 4},

i jeden podzbiór czteroelementowy:

{1, 2, 3, 4}.

Liczbe podzbiorów k-elementowych zbioru n-elementowego oznacza sie przez

(

n

k

)

.

10 Rozdział 1. Kombinatoryka

Jest to tak zwany symbol Newtona. Inaczej,(

nk

)

jest równe liczbie sposobów na jakiemozna wybrac k elementów ze zbioru n elementowego. Własnie pokazalismy, ze:

(

4

0

)

= 1,

(

4

1

)

= 4,

(

4

2

)

= 6,

(

4

3

)

= 4,

(

4

4

)

= 1.

Z definicji wynika, ze jezeli k > n, to(

nk

)

= 0. Zachodza dwa wzory:(

n

k

)

=

(

n

n − k

)

, (1.3)

(

n + 1

k

)

=

(

n

k

)

+

(

n

k − 1

)

. (1.4)

Wzór (1.3) bierze sie z prostej obserwacji, ze wybranie k elementów, które naleza dopodzbioru A, jest równowazne wybraniu n − k elementów, które do A nie naleza.

Aby uzasadnic równosc (1.4), rozwazmy k-elementowe podzbiory zbioru

{1, . . . , n, n + 1}.Policzmy osobno te podzbiory, które zawieraja element n + 1, i osobno te, które go niezawieraja. Podzbiorów nie zawierajacych n + 1 jest

(

nk

)

, bo wszystkie k elementów trze-ba wybrac ze zbioru {1, . . . , n}. Podzbiorów zawierajacych n + 1 jest

(

nk−1

)

, bo k − 1elementów trzeba wybrac ze zbioru {1, . . . , n}. Razem wszystkich k-elementowych pod-zbiorów zbioru {1, . . . , n, n + 1} jest

(

nk

)

+(

nk−1

)

.Korzystajac z równosci (1.4), mozemy obliczac symbole Newtona rekurencyjnie. Naj-

pierw mamy(

00

)

= 1, poniewaz jest jeden zeroelementowy (pusty) podzbiór zbioru zero-elementowego (pustego). Jezeli mamy juz policzone symbole Newtona dla n, to mozemyliczyc, ile jest podzbiorów zbioru (n + 1)-elementowego. Zaczynamy od

(

n+1n+1

)

= 1

oraz(

n+10

)

= 1, a nastepnie korzystamy z równania (1.4). Metode te ilustruje tak zwanytrójkat Pascala:

11 1

1 2 11 3 3 1

1 4 6 4 11 5 10 10 5 1

1 6 15 20 15 6 1

W n-tym wierszu (wiersze numerowane sa od n = 0) znajduja sie symbole Newtona:(

n

0

) (

n

1

) (

n

2

)

. . .

(

n

n

)

.

Na skraju znajduja sie jedynki, poniewaz(

n0

)

=(

nn

)

= 1. k-ty element w n-tym wierszudla 1 ≤ k ≤ n − 1 jest suma dwóch elementów stojacych bezposrednio nad nim:

(

n

k

)

=

(

n − 1

k

)

+

(

n − 1

k − 1

)

.

1.8. Dwumian Newtona 11

Jezeli 0 ≤ k ≤ n, to symbol Newtona mozna tez obliczyc ze wzoru:(

n

k

)

=n(n − 1) · · · (n − k + 1)

k!(1.5)

lub(

n

k

)

=n!

k!(n − k)!(1.6)

Oto uzasadnienie wzoru (1.5): Aby wybrac podzbiór k-elementowy ze zbioru {1, . . . , n},wybieramy k-elementowy ciag bez powtórzen i bierzemy do podzbioru elementy tegociagu ignorujac ich kolejnosc. Poniewaz kazdemu k-elementowemu podzbiorowi odpo-wiada k! ciagów o tych samych elementach, wiec podzbiorów jest k! razy mniej nizk-elementowych ciagów bez powtórzen. Wzór (1.5) wynika teraz z twierdzenia 1.8, awzór (1.6) bezposrednio ze wzoru (1.5).

Wzór (1.5) pozwala wyprowadzic oszacowania na wartosc symbolu Newtona, dla 1 ≤k ≤ n:(

n

k

)

=n(n − 1) · · · (n − k + 1)

k(k − 1) · · · 1 =(n

k

)

(

n − 1

k − 1

)

· · ·(

n − k + 1

1

)

≥(n

k

)k

.

Poniewaz, jak łatwo sprawdzic n−ik−i

≥ nk

dla kazdego 1 ≤ i ≤ k − 1. Korzystajac z

nierównosci k! ≥ (ke)k wyprowadzonej ze wzoru Stirlinga (1.2), otrzymujemy górne

ograniczenie:(

n

k

)

=n(n − 1) · · · (n − k + 1)

k!≤ nk

k!≤(en

k

)k

.

1.8 Dwumian Newtona

Symbole Newtona wystepuja w znanym twierdzeniu Newtona.

Twierdzenie 1.12 (dwumian Newtona) Dla kazdej liczby rzeczywistej t oraz liczby cał-kowitej n ≥ 0 zachodzi:

(1 + t)n =

n∑

k=0

(

n

k

)

tk.

Dowód, przez indukcje. Wzór jest oczywisty dla n = 0. Załózmy teraz, ze jest prawdzi-wy dla n. Mamy:

(1 + t)n+1 = (1 + t)n(1 + t) =

(

n∑

k=0

(

n

k

)

tk

)

(1 + t).

Współczynnik przy tk po prawej stronie wynosi:(

n

k − 1

)

+

(

n

k

)

.

12 Rozdział 1. Kombinatoryka

Pierwszy składnik pochodzi od iloczynu:(

nk−1

)

tk−1 · t, a drugi od iloczynu:(

nk

)

tk · 1. Ze

wzoru (1.4) wynika, ze współczynnik przy tk wynosi(

n+1k

)

. 2

Jezeli do wzoru Newtona podstawimy t = ba

, a potem pomnozymy obie strony przez an,to otrzymamy inna znana wersje wzoru Newtona.

Wniosek 1.13 Dla dowolnych liczb rzeczywistych a i b i dowolnej liczby całkowitej n ≥0:

(a + b)n =

n∑

k=0

(

n

k

)

an−kbk.

Jezeli podstawimy t = 1 do wzoru z twierdzenia 1.12, to otrzymamy:

2n =n∑

k=0

(

n

k

)

,

co potwierdza jeszcze raz, ze wszystkich podzbiorów zbioru n-elementowego jest 2n.Zobaczymy teraz, ze wsród wszystkich podzbiorów zbioru {1, . . . , n} jest tyle samo

podzbiorów mocy parzystej (o parzystej liczbie elementów) i podzbiorów mocy niepa-rzystej (o nieparzystej liczbie elementów).

Twierdzenie 1.14 Dla kazdego zbioru zawierajacego n elementów, liczba podzbiorówparzystej mocy jest równa liczbie podzbiorów nieparzystej mocy.

Pierwszy dowód. Jezeli podstawimy t = −1 do wzoru Newtona, to otrzymamy:

0 =

n∑

k=0

(−1)k

(

n

k

)

.

Zauwazmy, ze w sumie po prawej stronie z plusem wystepuja symbole Newtona(

nk

)

dla parzystych k, a z minusem — dla nieparzystych k. Tak wiec z plusem mamy liczbepodzbiorów parzystej mocy, a z minusem liczbe podzbiorów nieparzystej mocy. Z powyz-szego wzoru wynika, ze podzbiorów parzystej mocy jest tyle samo co podzbiorów mocynieparzystej.Drugi dowód. Rozwazmy funkcje f , która kazdemu podzbiorowi

A ⊂ {1, 2, . . . , n}

przyporzadkuje podzbiór

f(A) = A ⊕ {n} = (A − {n}) ∪ ({n} − A),

czyli róznice symetryczna zbioru A i zbioru jednoelementowego {n}. Zauwazmy, zefunkcja f łaczy podzbiory w pary, poniewaz jezeli f(A) = B, to f(B) = A. Rzeczywi-scie, jezeli A zawiera n, to B = A−{n} i B ⊕{n} = A. Jezeli natomiast A nie zawieran, to B = A ∪ {n} i równiez B ⊕ {n} = A.

Pozostaje zauwazyc, ze z pary zbiorów A i f(A) jeden jest mocy parzystej i jedennieparzystej. 2

1.9. Zasada szufladkowa Dirichleta 13

1.9 Zasada szufladkowa Dirichleta

Zasada szyfladkowa Dirichleta w najprostszej postaci mówi, ze jezeli mamy k kul i chce-my je rozmiescic w m < k szufladach, to w przynajmniej jednej szufladzie musi znalezcsie wiecej niz jedna kula. W nieco ogólniejszej postaci brzmi ona nastepujaco:

Twierdzenie 1.15 (Zasada szufladkowa Dirichleta) Jezeli zbiór A podzielimy na k pod-zbiorów, to przynajmniej jeden z tych podzbiorów ma |A|

klub wiecej elementów.

Dowód Nie wprost. Przypuscmy, ze kazdy z k podzbiorów ma mniej niz |A|k

elementów.

Wtedy cały zbiór A ma mniej niz k |A|k

= |A| elementów; sprzecznosc. 2

Przykład 1.16 Wyobrazmy sobie urne z białymi i czarnymi kulami, po 10. Jezeli wylosu-jemy trzy kule, to beda wsród nich dwie kule w tym samym kolorze, a jezeli wylosujemy 9kul, to bedziemy mieli 5 kul w jednym kolorze.

Przykład 1.17 Przypuscmy, ze na przyjeciu jest n osób i niektorzy witaja sie przez poda-nie dłoni. Pokazemy, ze wsród nich znajda sie dwie osoby, które uscisneły tyle samo dłoni.Najpierw załózmy, ze kazda osoba uscisneła komus dłon. Mamy wtedy n osób, z którychkazda uscisneła dłon od 1 do n − 1 razy. Musza byc wiec dwie osoby z ta sama liczbauscisków. Jezeli natomiast jest osoba, która nie uscisneła dłoni nikomu, to wtedy nie mozebyc osoby, która uscisneła n−1 dłoni. Czyli mamy n osób, z których kazda uscisneła dłonod 0 do n − 2 razy.

1.10 Zasada sumy

W najprostszej postaci zasada sumy, mówi ze moc sumy dwóch zbiorów A i B jest równa

|A ∪ B| = |A| + |B| − |A ∩ B|.Wyobrazmy sobie, ze obliczajac prawa strone tej równosci liczymy po kolei elementyzbioru A i dla kazdego elementu dodajemy +1 do ogólnej sumy, nastepnie liczymy ele-menty zbiorów B i dla kazdego dodajemy +1, a na koncu liczymy elementy przekrojuA∩B i dla kazdego dodajemy −1. Zastanówmy sie teraz jaki jest udział poszczególnychelementów w tak powstałej sumie. Jezeli jakis element wystepuje tylko w A lub tylko wB, to jego udział wynosi 1. Ale takze, jezeli nalezy do obu zbiorów A i B to jego udziałwynosi 1 = 1 + 1 − 1. Dlatego na koncu wynik bedzie równy liczbie elementów, którenaleza do jednego lub drugiego zbioru.

Przykład 1.18 Policzmy ile liczb naturalnych z przedziału od 1 do 30 jest podzielnychprzez 2 lub 3. Niech A2 oznacza zbiór liczb podzielnych przez 2, a A3 zbiór liczb podziel-nych przez 3. Liczby podzielne przez 2 lub 3 tworza zbiór A2 ∪ A3. Mamy

|A2| = 15, |A3| = 10 oraz |A2 ∩ A3| = 5.

A2 ∩ A3 zawiera liczby podzielne przez 2 i 3, czyli podzielne przez 6. Ze wzoru na sumeotrzymujemy:

|A2 ∪ A3| = 15 + 10 − 5 = 20.

14 Rozdział 1. Kombinatoryka

Podobnie mozemy uzasadnic wzór na sume trzech zbiorów:

|A ∪ B ∪ C| = |A| + |B| + |C| − |A ∩ B| − |A ∩ C| − |B ∩ C| + |A ∩ B ∩ C|.

Jezeli zastosujemy podobne liczenie, to udział elementów, które naleza tylko do jednegozbioru, wynosi 1, tych, które naleza do dwóch (ale nie do trzech naraz), wynosi 1+1−1 =1, a tych, które naleza do wszystkich trzech zbiorów, 1 + 1 + 1 − 1 − 1 − 1 + 1 = 1.

Przykład 1.19 Policzmy ile liczb z przedziału od 1 do 30 jest podzielnych przez 2, 3, lub5. Niech A2 oznacza zbiór liczb podzielnych przez 2, A3 zbiór liczb podzielnych przez3, a A5 podzielnych przez 5. Mamy |A2| = 15, |A3| = 10, |A5| = 6, |A2 ∩ A3| = 5,|A2 ∩ A5| = 3, |A3 ∩ A5| = 2, |A2 ∩ A3 ∩ A5| = 1. Ze wzoru na sume otrzymujemy:

|A2 ∪ A3 ∪ A5| = 15 + 10 + 6 − 5 − 3 − 2 + 1 = 22.

Jak widac, tylko osiem liczb mniejszych od 30 nie jest podzielnych przez 2, 3 lub 5; sa to:1, 7, 11, 13, 17, 19, 23, 29.

W nastepnym podrozdziale pokazemy jak mozna obliczyc sumy dowolnej skonczonejklasy zbiorów.

1.11 Zasada właczania i wyłaczania

Zacznijmy od przykładu.

Przykład 1.20 W grupie 100 studentów 45 uprawia koszykówke, 53 pływanie i 55 szachy.Takich, którzy graja w koszykówke i pływaja, jest 28; takich, którzy graja w koszykówke iszachy, jest 32, takich, którzy graja w szachy i pływaja, jest 35, a takich, którzy uprawiajawszystkie trzy sporty, jest 20. Pytanie: ilu studentów nie uprawia ani koszykówki, anipływania? To zadanie mozna rozwiazac za pomoca tak zwanego diagramu Venna (rysu-nek ??). Posługujac sie diagramem łatwo policzyc, ze:

8 studentów uprawia koszykówke i pływanie, ale nie gra w szachy,

15 pływa i gra w szachy, ale nie gra w koszykówke;

10 pływa, ale nie gra w ani w koszykówke, ani w szachy,

i tak dalej.

Widac tez, ze 22 studentów nie uprawia zadnego sportu.

Zasada właczania i wyłaczania pozwala rozwiazywac tego typu zadania bez diagra-mów Venna. Niech X bedzie naszym uniwersum, A1, . . . , An jego podzbiorami. Dlakazdego podzbioru I zbioru indeksów I ⊂ {1, . . . , n} definiujemy zbiór:

AI =⋂

i∈I

Ai,

przyjmujemy przy tym A∅ = X.

1.11. Zasada właczania i wyłaczania 15

Rysunek 1.1: Diagram Venna

pływacy

10

15

8 20

125 8

22

koszykarze

szachisci

Przykład 1.21 W przykładzie 1.20 X to zbiór wszystkich studentów, A1 to uprawiajacykoszykówke, A2 — pływanie, a A3 — szachy:

• A{1,2} = A1 ∩ A2 to uprawiajacy koszykówke i pływanie,

• A{1,3} = A1 ∩ A3 to uprawiajacy koszykówke i szachy,

• A{2,3} = A2 ∩ A3 to uprawiajacy pływanie i szachy,

• A{1,2,3} = A1 ∩ A2 ∩ A3 to uprawiajacy wszystkie trzy sporty.

Twierdzenie 1.22 (zasada właczania i wyłaczania) Niech X , bedzie dowolnym skonczo-nym zbiorem (uniwersum), a A1, . . . , An dowolnymi jego podzbiorami. Wtedy liczba ele-mentów uniwersum X , które nie naleza do zadnego podzbioru Ai, wynosi:

I⊂{1,...,n}

(−1)|I||AI |. (1.7)

16 Rozdział 1. Kombinatoryka

Sumujemy tutaj po wszystkich podzbiorach I zbioru {1, . . . , n}, a AI oznacza przekrójAI =

i∈I Ai.

Przykład 1.23 Stosujac zasade właczania i wyłaczania do przykładu ze studentami mo-zemy teraz policzyc studentów, którzy nie uprawiaja zadnego sportu:

|A∅| − |A1| − |A2| − |A3| + |A{1,2}| + |A{1,3}| + |A{2,3}| − |A{1,2,3}|=|X | − |A1| − |A2| − |A3| + |A1 ∩ A2| + |A1 ∩ A3| + |A2 ∩ A3|

−|A1 ∩ A2 ∩ A3|=100− 45 − 53− 55 + 28 + 32 + 35− 20=22.

Dowód Twierdzenia 1.22. Podobnie jak w poprzednim podrozdziale, zeby obliczyc sume (1.7),liczymy elementy poszczególnych zbiorów AI , i dla kazdego elementu dodajemy (−1)|I|

do sumy (+1, gdy |I | jest parzyste, lub −1, gdy |I | jest nieparzyste). Udział pojedynczegoelementu x w tak utworzonej sumie wynosi

x∈AI

(−1)|I|,

czyli jest równy sumie współczynników (−1)|I| dla tych podzbiorów I ⊂ {1, . . . , n}, dlaktórych x ∈ AI .

Jezeli x nie nalezy do zadnego z podzbiorów Ai, to x jest liczony tylko raz, w zbio-rze A∅, i jego udział w sumie (1.7) wynosi 1. Przypuscmy teraz, ze x nalezy do jakispodzbiorów i niech

J = {i ∈ {1, . . . , n} : x ∈ Ai},czyli J to indeksy tych podzbiorów, które zawieraja x, niech |J | = j. Zauwazmy teraz,ze x ∈ AI wtedy i tylko wtedy, gdy I ⊂ J . Rzeczywiscie x ∈ AI =

i∈I Ai wtedy itylko wtedy, gdy x ∈ Ai, dla kazdego i ∈ I , czyli gdy I ⊂ J . Tak wiec udział elementux w sumie (1.7) wynosi:

I⊂J

(−1)|I|.

Jest to suma po wszystkich podzbiorach I zbioru J . Uporzadkujmy teraz składniki tejsumy według mocy podzbiorów I . Mamy

(

ji

)

podzbiorów mocy i, wiec:

I⊂J

(−1)|I| =

j∑

i=0

(

j

i

)

(−1)i = (1 − 1)j = 0.

Przedostatnia równosc wynika ze wzoru Newtona. Tak wiec wkłady elementów, które nienaleza do zadnego Ai, wynosza po 1, a wkłady tych elementów, które naleza do jakiegosAi, wynosza po 0. A zatem suma (1.7) zlicza elementy nie nalezace do zadnego Ai. 2

Aby policzyc moc sumy zbiorów

n⋃

i=1

Ai

mozemy wykorzystac wzór (1.7), przy załozeniu, ze X =⋃n

i=1 Ai. Mamy wtedy

1.12. Przestawienia 17

Twierdzenie 1.24∣

n⋃

i=1

Ai

= −∑

I⊂{1,...,n}I 6=∅

(−1)|I||AI |.

1.12 Przestawienia

Przestawieniem bedziemy nazywac permutacje bez punktu stałego, czyli taka permutacje,w której zaden element nie stoi na swoim miejscu. Wykorzystamy teraz zasade właczaniai wyłaczania, do policzenia liczby przestawien w zbiorze n-elementowym.

Twierdzenie 1.25 Liczba przestawien (permutacji bez punktów stałych) w zbiorze n-elementowym wynosi:

n!

n∑

i=0

(−1)i

i!.

Dowód. Niech X = Sn bedzie zbiorem wszystkich permutacji na zbiorze {1, . . . , n},a Ai zbiorem permutacji, w których i jest punktem stałym, to znaczy Ai = {π ∈ Sn |π(i) = i. Moc zbioru Ai wynosi:

|Ai| = (n − 1)!,

poniewaz w zbiorze Ai sa te permutacje, które permutuja wszystkie n − 1 elementówoprócz i-tego. Podobnie moc zbioru AI wynosi:

|AI | =

i∈I

Ai

= (n − |I |)!,

bo teraz w AI permutujemy n − i elementów, wszystkie oprócz tych, które naleza do I .Permutacje bez punktów stałych to te permutacje, które nie naleza do zadnego ze zbiorówAi. Z zasady właczania i wyłaczania ich liczba wynosi

I⊂{1,...,n}

(−1)|I|(n − |I |)!.

Pogrupujmy teraz składniki sumy według mocy zbiorów I . Mamy(

ni

)

podzbiorów mocyi. Dla kazdego z nich składnik sumy wynosi (−1)i(n − i)!, tak wiec liczba przestawienwynosi:

n∑

i=0

(−1)i

(

n

i

)

(n − i)!.

Twierdzenie wynika teraz z równosci(

ni

)

(n − i)! = n!i! . 2

18 Rozdział 1. Kombinatoryka

1.13 Generowanie obiektów kombinatorycznych

W tym rozdziale zajmiemy sie algorytmami generujacymi (wypisujacymi) obiekty kom-binatoryczne. Przedstawione algorytmy beda działaly według nastepujacego schematu:

• Wypisujemy pierwszy obiekt.

• Powtarzamy, az do napotkania ostatniego obiektu:

� Przetwarzamy biezacy obiekt tak, aby otrzymac nastepny obiekt.

Takie algorytmy maja ta zalete, ze nie wymagaja duzo pamieci. Nalezy tylko pamietac je-den obiekt. Algorytmy generujace obiekty sa uzywane w przypadku, gdy chcemy spraw-dzic wszystkie obiekty danej klasy lub wtedy, gdy chcemy wylosowac obiekt danej klasy.Przypuscmy, na przykład, ze chcemy wylosowac jakis 3 elementowy podzbiór zbioru{1, . . . , 7}. W tym celu losujemy liczbe naturalna k od 1 do

(

73

)

= 35, a nastepnie gene-rujujemy podzbiory, az do elementu k.

1.13.1 Generowanie podzbiorów

Zaczniemy od najprostszego przypadku wypisania wszystkich podzbiorów zbioru

{1, . . . , n}.

Algorytm wypisujacy wszystkie podzbiory zbioru {1, . . . , n}:

• Pierwszy podzbiór: ∅.

• by uzyskac nastepny po A podzbiór:

� Wskazujemy na najwiekszy element a ∈ {1, . . . , n} nie nalezacy do A, czylia = max{1 ≤ i ≤ n | i /∈ A}

� Jezeli takiego a nie ma, to koniec algorytmu, zbiór A = {1, . . . , n} jestostatnim podzbiorem.

� W przeciwnym przypadku dodajemy a do A i usuwamy z A wszystkie ele-menty wieksze od a.

Przykład 1.26 Dla n = 3 powyzszy algorytm wypisze po kolei nastepujace zbiory: ∅,{3}, {2}, {2, 3}, {1}, {1, 3}, {1, 2}, {1, 2, 3}.

Zauwazmy, ze funkcje charakterystyczne wypisywanych podzbiorów, traktowane ja-ko binarny zapis liczb, tworza ciag kolejnych liczb od 0 do 2n − 1. Szukajac nastepnegoz kolei elemenetu algorytm postepuje podobnie jak algorytm zwiekszania o jeden liczbyw systemie dwójkowym.

1.13. Generowanie obiektów kombinatorycznych 19

1.13.2 Generowanie k-elementowych podzbiorów

Algorytm generujacy k elementowe podzbiory zbioru {1, . . . , n}:

• Pierwszy k-podzbiór to {1, . . . , k}.

• Przypuscmy, ze ostatnio wygenerowany podzbiór, to A = {a1, . . . , ak}, gdzie a1 <. . . < ak. Aby wygenerowac nastepny podzbiór:

� znajdujemy najmniejsze takie i, ze ai + 1 /∈ A;

� jezeli ai = n, to znaczy, ze A = {n − k + 1, . . . , n} i jest to ostatni wyge-nerowany podzbiór.

� jezeli ai < n, to zwiekszamy ai o jeden, a elementy mniejsze od ai zamie-niamy na i − 1 najmniejszych liczb, to znaczy aj := j dla j < i.

Przykład 1.27 Dla n = 6 i k = 4 algorytm wypisze po kolei nastepujace podzbiory(podajemy je bez nawiasów i przecinków)

1234, 1235, 1245, 1345, 2345, 1236, 1246, 1346, 2346, 1256, 1356, 2356, 1456, 2456, 3456.

Zauwazmy, ze w przykładzie najpierw wypisywane sa 4-podzbiory niezawierajace 6:

1234, 1235, 1245, 1345, 2345

a pózniej 4-podzbiory zawierajace 6

1236, 1246, 1346, 2346, 1256, 1356, 2356, 1456, 2456, 3456,

które otrzymywane sa w ten sposób, ze do kolejnych 3-podzbiorów zbioru {1, . . . , 5}dopisywana jest 6.

Jest to ogólna zasada działania tego algorytmu: aby wypisac j-podzbiory zbioru {1, . . . , i}algorytm najpierw wypisuje j podzbiory zbioru {1, . . . , i − 1}, a nastepnie podzbioryzawierajace element i (sa one otrzymywane przez dodawanie i do j−1 podzbiorów zbio-ru {1, . . . , i− 1}).

W powyzszym przykładzie wsrod podzbiorów zawierajacych 6 najpierw mamy te,które sa utworzone z 3-podzbiorów {1, 2, 3, 4} z dopisana 6:

1236, 1246, 1346, 2346,

a po nich nastepuja te, które sa utworzone z 2-podzbiorów {1, 2, 3, 4}, z dopisana 5 i 6:

1256, 1356, 2356, 1456, 2456, 3456.

Dlatego, kiedy w biezacym zbiorze A = {a1, . . . , ak} algorytm znalazł takie i, ze ai+1 /∈A, to znaczy, ze algorytm jest w trakcie wypisywania tych podzbiorów, które zawierajaai+1, . . . , ak (wszystkie wieksze od ai + 1), plus jakis i-podzbiór zbioru {1, . . . , ai +1}. Zbiór A jest ostatnim podzbiorem, w którym wystepuja ai+1, . . . , ak, oraz jakis i-podzbiór zbioru {1, . . . , ai}, a nie wystepuje ai + 1. Według opisanej wyzej zasady terazpowinny nastapic podzbiory, które zawieraja ai + 1 plus jakis (i − 1)-podzbiór zbioru{1, . . . , ai}, plus elementy ai+1, . . . , ak. Pierwszy z nich to podzbiór

{1, . . . , i − 1, ai + 1, ai+1 . . . , ak}.I taki element jest wypisywany po zbiorze A.

20 Rozdział 1. Kombinatoryka

1.13.3 Generowanie permutacji

Algorytm generowania permutacji zbioru {1, . . . , n}:

• Pierwsza permutacja to identycznosc, czyli ai = i, dla 1 ≤ i ≤ n.

• Aby wypisac nastepna po (a1, . . . , an) permutacje:

� Znajdujemy najwieksze j, 1 ≤ j ≤ n − 1 spełniajace warunek aj < aj+1,

� jezeli takiego j nie ma, to biezaca permutacja jest ostatnia,

� jezeli takie j istnieje, to zamieniamy aj z najmniejszym ak takim, ze ak >aj oraz k > j, a nastepnie odwracamy porzadek elementów aj+1, . . . , an.

Przykład 1.28 Oto 10 pierwszych permutacji czteroelementowych

1234, 1243, 1324, 1342, 1423, 1432, 2134, 2143, 2314, 2341, 2413, 2431,

Alorytm wypisuje permutacje w porzadku rosnacym, jezeli potraktujemy permutacje jakoliczby zapisane z baza n + 1, a liczby 1, . . . , n jako cyfry w tym systemie. Na przy-kład, przypuscmy, ze biezaca permutacja jest (436521). Algorytm znajduje j = 2 iaj = 3. Wtedy ta permutacja jest ostatnia (najwieksza) permutacja sposród permutacjizaczynajacych sie od (43...), bo od pozycji trzeciej mamy ciag malejacy (..6521) i jestto najwiekszy ciag jaki mozna utworzyc z elementów 1,2,5,6. Teraz powinny nastapicpermutacje zaczynajace sie od (45...) (czwórki na pierwszym miejscu nie zmieniamy, atrójka na drugim miejscu powinna byc zamieniona przez nastepna sposrod liczb stojacychza nia, czyli przez 5). Pierwsza taka permutacja jest ta, w której pozostałe elementy rosna,czyli (451236).

1.14 Zadania

1. Ile numerów rejestracyjnych samochodów mozna utworzyc, jezeli kazdy numerskłada sie z trzech liter i czterech cyfr?

Ile numerów rejestracyjnych mozna utworzyc, jezeli bedziemy dodatkowo wyma-gac, aby kazdy numer zaczynał sie od spółgłoski?

2. Ile jest ciagów zero-jedynkowych długosci 4, w których pierwszy i trzeci bit sajednakowe? Wypisz je wszystkie.

3. Jaka czesc wszystkich ciagów zero-jedynkowych długosci n > 3, posiada iden-tyczne bity na pierwszej i trzeciej pozycji?

4. Ile jest liczb trzycyfrowych w systemie: a) dziesietnym, b) dwójkowym, c) trójko-wym? Ile jest liczb trzycyfrowych z róznymi cyframi.

5. Ile liczb trzycyfrowych zawiera cyfre 2 lub 3?

6. Na ile sposobów mozna posadzic n osób przy okragłym stole. Nie robi róznicy,gdzie kto siedzi, ale jakich ma sasiadów po lewej i prawej.

1.14. Zadania 21

7. Wypisz wszystkie funkcje ze zbioru {a, b} w zbiór {x, y, z}. Które z nich sa róz-nowartosciowe?

8. Wypisz wszystkie funkcje ze zbioru {1, 2, 3} w zbiór {1, 2}. Które z nich sa mo-notoniczne?

9. Mamy dowolny graf G = (V, E). Na ile sposobów mozna pokolorowac dwomakolorami jego wierzchołki? Na ile sposobów mozna pokolorowac dwoma koloramiwierzchołki tak, aby zgóry wybrana krawedz e = {u, v} miała konce w róznychkolorach?

10. Ile jest monotonicznych ciagów zerojedynkowych długosci n?

11. Mamy dwie permutacje:

π1 =

(

1 2 3 4 52 5 4 3 1

)

π2 =

(

1 2 3 4 51 5 4 3 2

)

Oblicz π1 ◦ π2, π2 ◦ π1, π−11 , π−1

2 .

12. Ile słów mozna utworzyc z liter słowa ULICA (litery nie moga sie powtarzac)?

13. Mamy trójkat równoboczny o wierzchołkach a, b, c. Jakim przekształceniom odpo-wiadaja permutacje jego wierzchołków?

14. Mamy czworoscian o wierzchołkach a, b, c, d. Jakim przekształceniom odpowia-daja permutacje jego wierzchołków?

15. Wypisz wszystkie podzbiory zbioru {x, y, z}.

16. Na ile sposobów mozna wybrac dwuosobowa delegacje z grupy piecioosobowej?

17. Wypisz funkcje charakterystyczne wszystkich trzyelementowych podzbiorów zbio-ru {1, 2, 3, 4, 5}.

18. W grupie jest piec dziewczat i pieciu chłopców. Na ile sposobów mozna wybracpodgrupe składajaca sie: a) z trzech dziewczat i dwóch chłopców? Na ile sposobówmozna utworzyc piec par z chłopcem i dziewczyna w kazdej parze?

19. Znana jest zabawka dla dzieci składajaca sie z dwunastu szesciennych klocków znaklejonymi na sciankach fragmentami obrazków. Na ile sposobów mozna ułozycte klocki w prostokat (trzy rzedy po cztery klocki w rzedzie)?

20. Udowodnij wzór k(

nk

)

= n(

n−1k−1

)

Wskazówka. Policz na dwa rózne sposoby, ile k-elementowych druzyn z kapitanemmozna utworzyc ze zbioru n sportowców.

22 Rozdział 1. Kombinatoryka

21. Udowodnij wzór∑n

k=0

(

nk

)2=(

2nn

)

.

Wskazówka. Policz na dwa rózne sposoby, ile n-elementowych grup mozna utwo-rzyc w klasie złozonej z n chłopców i n dziewczat.

22. Na ile sposobów mozna wybraz trzy liczby sposród liczb od 1 do 60, tak aby ichsuma była: a) nieparzysta; b) parzysta; c) podzielna przez 3.

23. Udowodnij, ze(

nk

)

jest najwieksze dla k = dn2 e i k = bn

2 c.

24. Udowodnij, ze(

2nn

)

≥ 22n

2n+1 .

25. Rozwin wielomian (1 + t)8.

26. Udowodnij, ze∑n

i=0

(

ni

)

2i = 3n.

27. Udowodnij wzory:(

n

3

)

=

(

n − 1

2

)

+

(

n − 2

2

)

+ · · · +(

3

2

)

+

(

2

2

)

(

n

k

)

=

(

n − 1

k − 1

)

+

(

n − 2

k − 1

)

+ · · · +(

k

k − 1

)

+

(

k − 1

k − 1

)

.

Wskazówka. Nalezy osobno policzyc podzbiory, w których 1 jest najmniejszymelemnetem, osobno te, w których 2 jest najmniejszym elementem i tak dalej.

28. Ile maksymalnie krawedzi moze miec graf o n wierzchołkach? Ile maksymalniekrawedzi moze miec graf skierowany o n wierzchołkach?

29. Graf pełny jest to graf, w którym kazde dwa wierzchołki połaczone sa krawedzia.Na ile sposobów mozna pokolorowac dwoma kolorami krawedzie pełnego grafu zn wierzchołkami?

30. Mamy zbiór wierzchołków V z n elementami. Ile jest grafów ze zbiorem wierz-chołków V ? Ile jest grafów skierowanych ze zbiorem wierzchołków V ?

31. W urnie sa kule białe i czarne. Ile kul trzeba wyciagnac z urny, zeby miec pewnosc,ze wsród wyciagnietych beda: a) dwie w tym samym kolorze, b) siedem w tymsamym kolorze. Jakie beda odpowiedzi w przypadku, gdy w urnie beda kule wtrzech kolorach.

32. Ułamek mk

przedstawiamy w postaci dziesietnej. Udowodnij, ze okres tego ułamkajest nie wiekszy niz k.

33. Wylosowano n + 1 liczb ze zbioru {1, 2, . . . , 2n}. Pokaz, ze któras z nich jestwielokrotnoscia innej.

Wskazówka: Mamy n szuflad, ponumerowanych kolejnymi liczbami nieparzystymi1, 3, 5, ... , 2n − 1. Kazda z wylosowanych liczb k ∈ {1, . . . , 2n} wkładamy doszuflady z numerem m, jezeli k = 2rm dla jakiegos r ≥ 0.

1.15. Problemy 23

34. Ze zbioru liczb od 1 do 107 wybrano 10 liczb. Pokaz, ze w wylosowanym zbiorzeistnieja dwa rozłaczne podzbiory z ta sama suma.

35. Przedstaw wzór na sume czterech zbiorów A, B, C i D.

36. Ile elementów zawiera róznica symetryczna A ⊕ B?

37. Ile ciagów długosci n o elementach ze zbioru {A, B, C, D} nie zawiera A lub niezawiera B, lub nie zawiera C.

38. Wyznacz liczbe elementów |A ∩ B ∩ C| oraz |C|, wiedzac, ze |A| = 10, |B| = 9,|A ∩ B| = 3, |A ∩ C| = 1, |B ∩ C| = 1 oraz |A ∪ B ∪ C| = 18.

39. Oblicz ile liczb mniejszych od 100 jest podzielnych przez 2, 3 lub 5.

40. Oblicz ile liczb mniejszych od 100 nie jest podzielnych przez zadna z liczb 2, 3,5 lub 7. Udowodnij, ze wszystkie te liczby oprócz 1 sa pierwsze. Ile jest liczbpierwszych mniejszych od 100?

41. Za pomoca algorytmów opisanych w podrozdziale o generowaniu obiektów kom-binatorycznych wypisz wszystkie:

a) podzbiory zbioru {1, 2, 3, 4},

b) 2 elementowe podzbiory zbioru {1, 2, 3, 4, 5},

c) 3 elementowe podzbiory zbioru {a, b, c, d, e, f}.

d) 14 kolejnych permutacji zbioru {1, 2, 3, 4, 5, 6} poczynajac od permutacji456321 (lub od permutacji 246531).

42. Napisz programy realizujace opisane w tym rozdziale algorytmy generowania obiek-tów kombinatorycznych.

1.15 Problemy

1.15.1 Najkrótsze drogi

Wyobrazmy sobie siatke prostokatnych ulic z m + 1 ulicami biegnacymi pionowo (wkierunku północ—południe) i k + 1 ulicami biegnacymi poziomo (w kierunku wschód—zachód). Rysunek 1.2 przedstawia taka siatke dla m = 6 i k = 4.

1. Udowodnij, ze liczba najkrótszych dróg z punktu A do punktu B wynosi(

k+mk

)

.

2. Udowodnij, ze liczba funkcji niemalejacych ze zbioru {1, . . . , n}w zbiór {1, . . . , k}wynosi

(

k+n−1k−1

)

.

3. Ile jest funkcji monotonicznych ze zbioru {1, . . . , n} w zbiór {1, . . . , k}?

Wskazówki. Najkrótsze drogi z A do B składaja sie z ciagu k + m odcinków, z którychm jest poziomych i k pionowych.

Funkcje niemalejace ze zbioru {1, . . . , n} w zbiór {1, . . . , k} mozna skojarzyc z naj-krótszymi drogami w sieci ulic w prostokacie n × (k − 1).

24 Rozdział 1. Kombinatoryka

Rysunek 1.2: Siatka ulic dla m = 6 i k = 4 z zaznaczona jedna z najkrótszych dróg z Ado B.

A

B

1.15.2 Rozmieszczanie przedmiotów w pudełkach.

Przypuscmy, ze mamy n nierozróznialnych kul. Rozwaz na ile sposobów mozna rozłozycte kule do k rozróznialnych pudełek.

1. Udowodnij, ze istnieje(

n+k−1k−1

)

sposobów rozłozenia n kul do k pudełek.

2. Na ile sposobów mozna rozmiescic: a) 2 kule w trzech szufladach, b) 3 kule wdwóch szufladach. Wypisz wszystkie takie rozmieszczenia.

Wskazówka. Kazde rozmieszczenia n kul w k pudełkach moze byc przedstawione jakociag zer i jedynek długosci n+ k− 1, w którym wystepuje dokładnie k− 1 jedynek. Zerasymbolizuja kule a jedynki przegrody pomiedzy pudełkami. Na przykład ciag 00110100przedstawia rozłozenie pieciu kul do czterech pudełek, w których pierwsze pudełko za-wiera dwie kule, drugie jest puste, trzecie zawiera jedna kule, a czwarte dwie kule.

1.15.3 Wybór n przedmiotów k rozróznialnych typów

Wyobrazmy sobie, ze mamy przedmioty w k róznych typach, ze liczba przedmiotów kaz-dego typu jest nieograniczona i ze przedmioty jednego typu sa nierozróznialne. Zasta-nówmy sie na ile sposobów mozna wybrac n przedmiotów sposród tych k typów, przyzałozeniu, ze dopuszczalne sa powtórzenia typów i ze kolejnosc wybranych przedmiotównie jest istotna.

1. Pokaz, ze mozna to zrobic na(

n+k−1k−1

)

sposobów.

2. Ile jest rozwiazan równania x1 + x2 + · · · + xk = n wsród nieujemnych liczbcałkowitych? Liczba n jest stała, a x1, ... ,xk to zmienne.

1.15. Problemy 25

3. Na ile sposobów mozna wybrac 5 monet jezeli mamy nieograniczone zapasy zło-tówek i dwuzłotówek? Wypisz wszystkie takie sposoby.

4. Na ile sposobów mozna wybrac 5 monet jezeli mamy nieograniczone zapasy zło-tówek, dwuzłotówek i pieciozłotówek?

Wskazówka. Wybory przedmiotów k typów sa równowazne rozkładaniu nierozróznial-nych kul do k szuflad. Włozenie kuli do i-tej szuflady oznacza, ze jest ona i tego typu.

1.15.4 Kombinacje z powtórzeniami

k-elementowe kombinacje z powtórzeniami ze zbioru n-elementowego sa to k-elementowewybory elementów zbioru n-elementowego, w których elementy moga sie powtarzac iw których nie jest istotna kolejnosc wybieranych elementów. Na przykład, mamy czte-ry trzyelementowe kombinacje z powtórzeniami ze zbioru dwuelementowego {1, 2}; otoone: (1, 1, 1), (1, 1, 2), (1, 2, 2), (2, 2, 2).

Udowodnij, ze liczba k-elementowych kombinacji z powtórzeniami ze zbioru n-elementowego wynosi

(

n+k−1k

)

.Wskazówka. Takie kombinacje odpowiadaja wyborowi k elementów n typów.

1.15.5 Permutacje z powtórzeniami

Przypuscmy, ze mamy n przedmiotów k róznych typów oraz, ze przedmiotów typu i jestni. Rozwazmy ustawienia wszystkich tych przedmiotów w ciag. Przy tym dwa ustawieniasa rozróznialne tylko, jezeli na jakiejs pozycji maja przedmioty róznych typów.

1. Pokaz, ze takich rozróznialnych ustawien jest n!n1!n2!···nk!

2. Ile słów mozna utworzyc z liter słowa MAMA (litery M i A moga wystapic po dwarazy)? Wypisz wszystkie te słowa.

3. Ile słów mozna utworzyc z liter słowa MATEMATYKA?

1.15.6 Podziały uporzadkowane

Niech A bedzie dowolnym zbiorem n elementówy i niech n1 . . . nk beda dowpolnymiliczbami naturalnymi takimi, ze n1 + . . . + nk = n. Rozwazmy rozbicia zbioru A na kpodzbiorów A1, . . . , Ak, takich, ze |Ai| = ni dla kazdego 1 ≤ i ≤ k. Zakładamy przytym, ze kolejnosc podzbiorów jest istotna.

1. Pokaz, ze takich rozbic jest n!n1!n2!···nk! .

2. Na ile sposobów mozna rozdac 52 kartry na cztery osoby?

3. Na ile sposobów mozna utworzyc 5 par z 10 osób?

4. Uogólnij wzór na dwumian Newtona na przypadek (a+b+c)n lub (a1+· · ·+ak)n.

26 Rozdział 1. Kombinatoryka

1.15.7 Permutacje bez punktów stałych

Udowodnij, ze liczba przestawien (permutacji bez punktów stałych) w zbiorze n-elementowymjest równa zaokragleniu liczby n!

edo najblizszej liczby naturalnej; e jest podstawa loga-

rytmu naturalnego.

Wskazówka. Skorzystaj z twierdzenia 1.25, z rozwiniecia: e−1 =∑∞

i=0(−1)i

i! oraz z

oszacowania:∣

∑∞i=n+1

(−1)i

i!

∣≤ 1

(n+1)! .

1.15.8 Liczba surjekcji

Udowodnij, ze liczba surjekcji (funkcji na cała przeciwdziedzine) ze zbioru n-elementowegona zbiór k-elementowy wynosi:

k∑

i=0

(−1)i

(

k

i

)

(k − i)n.

Wskazówka. Skorzystaj z zasady właczania i wyłaczania dla zbioru wszystkich funkcji zezbioru {1, . . . , n} w zbiór {1, . . . , k}. Zbiór Ai to funkcje, które nie maja elementu i wobrazie.

1.15.9 Twierdzenie Ramseya

W tym podrozdziale bedziemy rozwazac grafy pełne, których krawedzie sa pokolorowanedwoma kolorami: białym lub czarnym. Dokładniej, mamy graf pełny G = (VG, EG) zn = |VG| wierzchołkami i ze zbiorem krawedzi EG = {{u, v} | u, v ∈ VG}, oraz funkcjec : VG → {b, c} kolorujaca krawedzie tego grafu. Interesuje nas problem, kiedy w grafieG istnieje klika H = (VH , EH) (podgraf pełny) z k wierzchołkami, której wszystkiekrawedzie maja ten sam kolor.

1. Pokaz, ze w kazdym grafie z szescioma wierzchołkami istnieje jednobarwny trójkat(trzy wierzchołki połaczone krawedziami w tym samym kolorze).

Wniosek. W kazdej grupie 6 osobowej albo sa trzy osoby, które sie wzajemnieznaja, albo trzy, które sie nie znaja.

2. Pokaz, ze istnieje graf z piecioma wierzchołkami, w którym nie ma jednobarwnegotrójkata.

3. Pokaz, ze w kazdym grafie z 20 wierzchołkami istnieja cztery wierzchołki połaczo-ne krawedziami w tym samym kolorze.

Wskazówka. Pokaz, ze istnieje 10 wierzchołków, które z pierwszym sa połaczonetym samym kolorem, na przykład białym. Pokaz, ze wsród kazdych 10 wierzchoł-ków albo sa trzy wierzchołki połaczone tylko białymi krawedziami, albo czterypołaczone tylko czarnymi (z dowolnego wierzchołka albo wychodza cztery białe,albo szesc czarnych krawedzi).

1.15. Problemy 27

4. Pokaz, ze w kazdym grafie z 18 wierzchołkami istnieja cztery wierzchołki połaczo-ne krawedziami w tym samym kolorze.

Wniosek. W kazdej grupie conajmniej 18 brydzystów albo sa cztery osoby, którejuz ze soba grały (kazda z kazda w parze), albo cztery, które ze soba nigdy nie grały(zadna z zadna).

Wskazówka. Podobnie jak w punkcie 3. Udowodnij, ze wsród kazdych 9 wierz-chołków albo sa trzy wierzchołki połaczone tylko białymi krawedziami, albo czterypołaczone tylko czarnymi. Pokaz, ze nie jest mozliwe, aby z kazdego wierzchołkawychodziły trzy białe i piec czarnych krawedzi.

Udowodnij nastepujace

Twierdzenie 1.29 (Twierdzenie Ramseya) . Dla kazdego k istnieje Rk, takie, ze kaz-dy graf z n > Rk wierzchołkami i dowolna funkcja kolorujaca jego krawedzie posiadapodgraf z k wierzchołkami i wszystkimi krawedziami w jednym kolorze.

Szkic dowodu. Niech N0 bedzie duza liczba. Pod koniec dowodu okaze sie jak duza.Niech graf posiada N0 wierzchołków i niech te wierzchołki beda ustawione w ciag. We-zmy pierwszy wierzchołek x1. Na podstawie zasady szufladkowej istnieje kolor c1 ∈{b, c} oraz podciag N1 = N0/2 wierzchołków, które sa z x1 połaczone kolorem c1. Po-zostałe wierzchołki usuwamy. Niech x2 bedzie pierwszym który został. Znowu istniejekolor c2 oraz podciag N2 = (N1 − 1)/2 wierzchołków stojacych za x2, które wszystkiesa z x2 połaczone kolorem c2 (kolory c1 i c2 moga byc rózne). Pozostałe wierzchołkiusuwamy. Powtarzamy to 2k − 1 razy i otrzymamy ciag wierzchołków x1, x2, ... , x2k,takich, ze kazdy wierzchołek xi, 1 ≤ i ≤ 2k − 1 jest połaczony kolorem ci ze wszystki-mi wierzchołkami stojacymi za nim. Kolory c1, ... , c2k−1 nie musza byc jednakowe, alewszystkie naleza do zbioru dwóch kolorów: biały i czarny. Dlatego na podstawie zasadyszufladkowej istnieje podciag k wierzckołków, z których kazde dwa sa połaczone tymsamym kolorem. Liczba N0 powinna byc tak duza, aby mozliwe były wszystkie opisanewyzej wybory. Na liczbe Rk nalezy wybrac najmniejsza taka liczbe.

Udowodnij Twierdzenie Ramseya dla przypadku, gdy kolorujemy nie pary wierzchoł-ków, ale trójki wierzchołków. Dokładniej funkcja kolorujaca przypisuje kolory trójkomróznych wierzchołków c : {{u, v, w} | u, v, w ∈ VG u 6= v, v 6= w, u 6= w} → {b, c}.

Szkic dowodu. Dowód prowadzimy podobnie jak w twierdzeniu Ramsey’a. Bierze-my wierzchołek x1. Wsród pozostałych wierzchołków kolorujemy pary: para {u, v} makolor biały, jezeli trójka {x1, u, v} ma kolor biały. Z twierdzenia Ramsey’a 3 wynika,ze jezeli liczba wierzchołków N0 jest dostatecznie duza, to istnieje podciag z N1 wierz-chołkami i parami w jednym kolorze. Pozostałe wierzchołki usuwamy. Teraz kazda trójkazawierajaca x1 ma taki sam kolor. Bierzemy nastepny wierzchołek x2 itd..

Udowodnij Twierdzenie Ramseya dla 3 (lub m) kolorów.

28 Rozdział 1. Kombinatoryka

1.15.10 Twierdzenie Halla o róznych reprezentantach

Wyobrazmy sobie n podzbiorów A1, ... ,An zbioru {1, . . . , n}. Interesuje nas, kiedy dlatych podzbiorów istnieje zestaw róznych reprezentantów, czyli ciag n róznych liczb a1,... ,an takich, ze ai ∈ Ai.

Łatwo zauwazyc, ze aby istniał zestaw róznych reprezentantów musi byc spełnionynastepujacy:

Warunek Halla:Dla kazdego podzbioru J ⊂ {1, ..., n}

j∈J

Aj

≥ |J |.

Pokaz, ze jest to takze warunek wystarczajacy.

Wskazówka. Szkic dowodu (przez indukcje). Powiemy, ze zbiór J jest krytyczny, jezeli∣

j∈J Aj

∣= |J |. Załózmy najpierw, ze istnieje podzbiór krytyczny J rózny od całego

zbioru {1, . . . , n}. Niech C =⋃

j∈J Aj .Na podstawie indukcji mozna w nim znalezc reprezentatów. Reszta spełnia warunek

Halla. Istotnie, niech I ⊂ {1, . . . , n}−J oraz K = I ∪J . Z tego, ze K spełniał warunekHalla na poczatku wynika, ze podzbiór I spełnia warunek Halla dla zbiorów Bi = Ai−C.

i∈I

Bi

=

k∈K

(Ai − C)

=

k∈K

(Ai)

− |C| ≥ |K| − |J | = |I |.

Jezeli nie ma własciwego podzbioru krytycznego, to na a1 wybieramy dowolny elem-net z A1, a reszta spełnia warunek Halla.