Bài giảng Toán rời rạc - Chương 2: Tổ hợp (Combinatorics) - Nguyễn Đức Nghĩa
Nội dung
2.1. Hoán vị
2.2. Tổ hợp (Combination)
2.3. Nguyên lý bù trừ
Chương 2
2.4. Công thức đệ qui và hàm sinh
2.5. Số Stirling
TỔ HỢP
Combinatoric)
2.6. Nguyên lý các lồng chim bồ câu
Chap02-2
Chap02-1
Toán rời rạc – NGUYỄN ĐỨC NGGHĨĨAA – Bộ môn KKHMT – ĐHBK Hà nộội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Chương 2. Lý thuyết tổ hợp
2.1 Hoán vị
2.1. Hoán vị
• 2.1.1. Chỉnh hợp lặp chập m (m-permutation with repetition)
• 2.1.2. Chỉnh hợp không lặp chập m (m-permutation)
• 2.1.3. Hoán vị (permutation)
2.2. Tổ hợp (Combination)
2.3. Nguyên lý bù trừ
• 2.1.4. Liệt kê hoán vị
2.4. Công thức đệ qui và hàm sinh
2.5. Số Stirling
2.6. Nguyên lý các lồng chim bồ câu
Chap02-3
Chap02-4
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Hon vị lp Chỉnh hợp lặp)
Chỉnh hợp lặp
•
Dễ thấy tập tất cả các chỉnh hợp lặp chập m từ n phần tử của X chính là
Xm. Vì vậy, theo nguyên lý nhân ta có
Định lý. Anm = nm.
• Giả sử X là tập n phần tử.
• Định nghĩa. Ta gọi chỉnh hợp lặp chập m từ n phần tử của
X là bộ có thứ tự gồm m thành phần, mỗi thành phần đều là
phần tử của X.
•
•
Ví dụ 1. Tính số ánh xạ từ tập m phần tử U = {u1, u2, ..., um} vào tập n
phần tử V.
• Chú ý: Trong tài liệu tiếng Anh, thuật ngữ "m-permutation
with repetition" được dùng để chỉ chỉnh hợp lặp chập m. Vì
thế có tài liệu dịch là hoán vị lặp.
•
Giải: Mỗi ánh xạ f cần đếm được xác định bởi bộ ảnh (f(u1), f(u2), ...,
f(um)), trong đó f(ui) Î V, i=1, 2, ..., m. Từ đó nhận được số cần tìm là
nm.
•
•
Ví dụ 2. Tính số dãy nhị phân độ dài n.
m
• Ký hiệu số lượng chỉnh hợp lặp chập m từ n phần tử là An
Giải: Mỗi dãy nhị phân độ dài n là một bộ gồm n thành phần, trong đó
mỗi thành phần chỉ nhận một trong hai giá trị (1 hoặc 0). Từ đó suy ra
số các dãy nhị phân độ dài n là 2n.
• Theo định nghĩa, một chỉnh hợp lặp chập m từ n phần tử
của X có thể biểu diễn bởi
•
•
Do mỗi tập con của tập n phần tử tương ứng với một vectơ đặc trưng là
một xâu nhị phân độ dài n, nên ta có
Hệ quả: Số lượng tập con của tập n phần tử là 2n.
(a1, a2, ..., am), ai Î X, i = 1, 2, ..., m.
Chap02-5
Chap02-6
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Chỉnh hợp lặp
2.1.2. Chỉnh hợp không lặp
• Ví dụ 3. Cần phải phân bố 100 sinh viên vào 4 nhóm
thực tập ACCESS, FOXPRO, EXCEL, LOTUS. Mỗi
sinh viên phải tham gia vào đúng một nhóm và mỗi
nhóm có thể nhận một số lượng không hạn chế sinh
viên
• Định nghĩa. Ta gọi chỉnh hợp không lặp chập m (m-permutation)
từ n phần tử của X là bộ có thứ tự gồm m thành phần, mỗi thành
phần đều là phần tử của X, các thành phần khác nhau từng đôi.
• Ký hiệu số lượng chỉnh hợp không lặp chập m từ n phần tử là
P(n,m). Rõ ràng, để tồn tại chỉnh hợp không lặp, thì m £ n.
• Theo định nghĩa, một chỉnh hợp không lặp chập m từ n phần tử
của X có thể biểu diễn bởi
• Giải: 4100 hay 1004 ?
• Mỗi cách phân bố cần tìm có thể biểu diễn bởi bộ có
thứ tự gồm 100 thành phần (b1, ..., b100) trong đó bi Î
{A, F, E, L} là nhóm thực tập của sinh viên thứ i. Từ
đó suy ra số cách phân bố cần đếm là 4100.
(a1, a2, ..., am), ai Î X, i = 1, 2, ..., m, ai ¹ aj, i ¹ j.
• Việc đếm số lượng chỉnh hợp không lặp chập m từ n phần tử có
thể thực hiện theo nguyên lý nhân. Ta có
• Định lý.
n!
P(n,m) = n(n -1)...(n -m +1) =
(n-m)!
Chap02-8
Chap02-7
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Chỉnh hợp không lặp
Chỉnh hợp không lặp
• VÝ dô 1. TÝnh sè đơn ¸nh tõ tËp m phÇn tö U = {u1, u2, ..., um}
vµo tËp n phÇn tö V.
• Chú ý: Để giải ví dụ 2 có thể lập luận trực tiếp theo nguyên
lý nhân:
• Gi¶i: Mçi đơn ¸nh f cÇn ®Õm ®îc x¸c ®Þnh bëi bé ¶nh (f(u1),
f(u2), ..., f(um)), trong ®ã f(ui) Î V, i=1, 2, ..., m, f(ui)¹ f(uj), i¹ j.
Tõ ®ã nhËn ®îc sè cÇn tìm lµ n(n-1)...(n-m+1).
• Ta lần lượt xếp các học sinh vào chỗ ngồi.
ΏHọc sinh thứ nhất có 10 cách xếp
ΏTiếp đến học sinh thứ hai có thể xếp vào 1 trong 9 chỗ còn
• Ví dụ 2. Có bao nhiêu cách xếp 4 học sinh vào ngồi sau một cái
lại, ...
bàn có 10 chỗ ngồi với điều kiện không được phép ngồi lòng.
• Theo nguyên lý nhân có 10.9.8.7 = 5040 cách xếp
• Giải. Đánh số các học sinh từ 1 đến 4, các chỗ ngồi từ 1 đến 10.
Mỗi cách xếp học sinh cần đếm có thể biểu diễn bởi bộ có thứ tự
(g1, g2, g3, g4), trong đó gi Î {1, 2, ..., 10} là chỗ ngồi của học
sinh i. Từ điều kiện đầu bài gi¹ gj, i¹ j; do đó mỗi cách xếp cần
đếm là một chỉnh hợp không lặp chập 4 từ 10. Vậy số cách xếp
cần đếm là P(10,4) = 10.9.8.7 = 5040.
Chap02-9
Chap02-10
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Hoán vị
2.1.3. Hoán vị
• Ví dụ 1. 6 người đứng xếp thành một hàng ngang
để chụp ảnh. Hỏi có thể bố trí bao nhiêu kiểu?
• Định nghĩa. Ta gọi hoán vị từ n phần tử của X là bộ có
thứ tự gồm n thành phần, mỗi thành phần đều là phần
tử của X, các thành phần khác nhau từng đôi.
• Giải: Mỗi kiểu ảnh là một hoán vị của 6 người. Từ
đó nhận được số kiểu ảnh có thể bố trí là 6! = 720.
• Ký hiệu số lượng hoán vị từ n phần tử là P(n).
• Theo định nghĩa, một hoán vị từ n phần tử của X có thể
• Ví dụ 2. Cần bố trí việc thực hiện n chương trình
trên một máy vi tính. Hỏi có bao nhiêu cách?
biểu diễn bởi
(a1, a2, ..., an), ai Î X, i = 1, 2, ..., n, ai ¹ aj, i ¹ j.
• Rõ ràng P(n) = P(n,n). Vì vậy, ta có
• Định lý.
• Giải: Đánh số các chương trình bởi 1, 2,..., n. Mỗi
cách bố trí việc thực hiện các chương trình trên
máy có thể biểu diễn bởi một hoán vị của 1, 2, ...,
n. Từ đó suy ra số cách bố trí cần tìm là n!
P(n) = P(n,n) = n´(n-1)´...´2´1= n!
Chap02-11
Chap02-12
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Hoán vị
Lit kê hon vị
• Xét hai phương pháp liệt kê:
• Ví dụ 3. Có bao nhiêu song ánh từ tập n phần tử X
ΏCây liệt kê
ΏThuật toán sinh hoán vị
• Cây liệt kê. Ví dụ, liệt kê các hoán vị của {a, b, c}
vào chính nó?
• Giải. Mỗi song ánh f cần đếm được xác định bởi
bộ ảnh (f(u1), f(u2), ..., f(un)), trong đó f(ui) Î X,
i=1, 2, ..., n, f(ui)¹ f(uj), i¹ j.
•
Từ đó nhận được số cần tìm là n!
b
a
c
Thành phần thứ 1
• Ví dụ 4. Có bao nhiêu cách bố trí n thợ thực hiện n
việc sao cho mỗi thợ thực hiện một việc và mỗi
việc do đúng một thợ thực hiện
a
c
c
a
b
a
b
c
c
Thành phần thứ 2
Thành phần thứ 3
a
b
b
• Giải: n!
(a,b,c) (a,c,b) (b,a,c) (b,c,a) (c,a,b) (c,b,a)
Chap02-13
Chap02-14
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Vdụ
toáhoávị
• C¸c ho¸n vÞ tõ 3 phÇn tö cña X ={1, 2, 3} ®îc liÖt kª theo
• Bµi to¸n ®Æt ra lµ: Cho X = {1, 2, ... , n}. H·y liÖt kª c¸c
ho¸n vÞ tõ n phÇn tö cña X.
thø tù tõ ®iÓn nh sau:
1
1
2
2
3
3
2
3
1
3
1
2
3
2
3
1
2
1
• Mçi ho¸n vÞ tõ n phÇn tö cña X cã thÓ biÓu diÔn bëi bé cã
thø tù gåm n thµnh phÇn a = (a1, a2, ... , an) tho¶ m·n
ai Î X , i = 1, 2,..., n , ap ¹ aq, p ¹ q.
• Tríc hÕt ta xÐt quan hÖ thø tù tõ ®iÓn trªn tËp c¸c ho¸n vÞ.
• Ta nãi ho¸n vÞ a = (a1, a2,..., an) ®i tríc ho¸n vÞ a' = (a'1,
a'2, ... , a'n) trong thø tù tõ ®iÓn vµ ký hiÖu lµ a p a', nÕu
tìm ®îc chØ sè k (1 £ k £ n) sao cho:
• Ho¸n vÞ ®Çu tiªn trong thø tù tõ ®iÓn lµ (1, 2, ... , n)
• Ho¸n vÞ cuèi cïng lµ (n, n-1, ..., 1).
• Ta cÇn tm c¸ch tõ mét ho¸n vÞ ®ang cã a = (a1, a2, ... , an)
nÕu cha ph¶i lµ ho¸n vÞ cuèi cïng, ®a ra ho¸n vÞ kÕ tiÕp.
a1 = a'1 , a2 = a'2, ... , ak-1 = a'k-1, ak < a'k .
Chap02-15
Chap02-16
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
ụ
Thuật toán sinh kế tiếp
• Gi¶ sö a = (a1, a2, ... , an) lµ ho¸n vÞ cha ph¶i cuèi cïng,
khi ®ã ho¸n vÞ kÕ tiÕp nã cã thÓ x©y dùng nhê thùc hiÖn c¸c
biÕn ®æi sau:
• Gi¶ sö ®ang cã ho¸n vÞ (3, 6, 2, 5, 4, 1), cÇn x©y dùng ho¸n
vÞ kÕ tiÕp nã trong thø tù tõ ®iÓn.
• Ta cã chØ sè j = 3 (a3 =2 < a4 = 5).
ΏTìm tõ ph¶i qua tr¸i ho¸n vÞ ®ang cã chØ sè j ®Çu tiªn
tho¶ m·n aj < aj+1 (nãi c¸ch kh¸c: j lµ chØ sè lín nhÊt
tho¶ m·n aj < aj+1);
• Sè nhá nhÊt cßn lín h¬n a3 trong c¸c sè bªn ph¶i cña a3 lµ
a5 = 4. Đæi chç a3 víi a5 ta thu ®îc (3, 6, 4, 5, 2, 1),
• Cuèi cïng, lËt ngîc thø tù ®o¹n a4 a5 a6 ta thu ®îc ho¸n vÞ
ΏTìm ak lµ sè nhá nhÊt cßn lín h¬n aj trong c¸c sè ë bªn
ph¶i aj ;
kÕ tiÕp (3, 6, 4, 1, 2, 5).
ΏĐổi chỗ aj víi ak ;
ΏLËt ngîc ®o¹n tõ aj+1 ®Õn an .
Chap02-17
Chap02-18
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Chương . Lý thuyết tổ hợp
2.. Tổ hợp
• 2.2.1. Tổ hợp
2.1. Hoán vị
• 2.2.2. Tổ hợp lặp
• 2.2.3. Tính chất của hệ số tổ hợp
• 2.2.4. Liệt kê
. Tổ hợp (Combination)
lý bù trừ
2.4. Công thức đệ qui và hàm sinh
2.5. Số Stirling
2.6. Nguyên lý các lồng chim bồ câu
Chap02-19
Chap02-20
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Tổ hợp
2.2.. Tổ hợp (mcombination)
• Định lý.
Cnm =
• Định nghĩa. Ta gọi tổ hợp chập m từ n phần tử của X là bộ
không có thứ tự gồm m thành phần, mỗi thành phần đều là phần
tử của X, các thành phần khác nhau từng đôi.
• Ký hiệu số lượng tổ hợp chập m từ n phần tử là Cnm (đôi khi ta
n
n!
(co the ky hieu la C(n,m) hay
)
÷
m!(n m)!
m
• C(n,m) được gọi là hệ số tổ hợp.
• Chứng minh. Gọi Q là tập hợp tất cả các chỉnh hợp không
lặp chập m của n phần tử.
sẽ sử dụng ký hiệu C(n,m))
• Theo định nghĩa, một tổ hợp chập m từ n phần tử của X có thể
biểu diễn bởi bộ không có thứ tự
ΏPhân Q thành các lớp sao cho hai chỉnh hợp thuộc cùng một
lớp chỉ khác nhau về thứ tự.
{a1, a2, ..., am}, ai Î X, i = 1, 2, ..., m, ai ¹ aj, i ¹ j.
• Với giả thiết X={1, 2,...,n}, một tổ hợp chập m từ n phần tử của
X có thể biểu diễn bởi bộ có thứ tự
ΏRõ ràng các lớp này tạo thành một phân hoạch của tập Q và
mỗi lớp như thế là tương ứng với một tổ hợp chập m của n.
Ώ Số chỉnh hợp trong mỗi lớp là bằng nhau và bằng m! (số
(a1, a2, ..., am), ai Î X, i = 1, 2, ..., m, 1 £ a1 < a2 < ...<am £ n.
hoán vị).
ΏSố các lớp là bằng số tổ hợp chập m của n: C(n,m).
Chap02-21
Chap02-22
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Tổ hợp
Ví dụ
• VÝ dô 1. Cã n ®éi bãng thi ®Êu vßng trßn. Hái ph¶i tæ chøc
bao nhiªu trËn ®Êu?
• Theo nguyên lý cộng, ta có
|Q| = m! C(n,m)
• Gi¶i: Cø 2 ®éi thì cã mét trËn. Tõ ®ã suy ra sè trËn ®Êu sÏ
b»ng sè c¸ch chän 2 ®éi tõ n ®éi, nghÜa lµ b»ng
suy ra
n(n-1)...(n-m+1) = m! C(n,m).
• Từ đó nhận được
C(n,2) = n(n-1)/2.
• VÝ dô 2. Hái cã bao nhiªu giao ®iÓm cña c¸c ®êng chÐo cña
mét ®a gi¸c låi n (n ³ 4) ®Ønh n»m ë trong ®a gi¸c, nÕu biÕt
r»ng kh«ng cã ba ®êng chÐo nµo ®ång quy t¹i ®iÓm ë trong
®a gi¸c?
n(n -1)(n -2)...(n -m +1)
m!
n!
Cnm =
=
m!(n -m)!
• Định lý được chứng minh.
• Gi¶i: Cø 4 ®Ønh cña ®a gi¸c thì cã mét giao ®iÓm cña hai ®-
êng chÐo n»m trong ®a gi¸c. Tõ ®ã suy ra sè giao ®iÓm cÇn
®Õm lµ
• Khi nhËn xÐt r»ng, gi¸ trÞ cña phÐp chia trong công thức của
định lý lµ mét sè nguyªn, ta nhËn ®îc mét kÕt qu¶ lý thó
trong sè häc: TÝch cña k sè tù nhiªn liªn tiÕp bao giê còng
chia hÕt cho k!.
C(n,4) = n(n-1)(n-2)(n-3)/24.
Chap02-23
Chap02-24
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
2.2.2. Tổ hợp lặp. Bàtoán chia kẹo
Bài toán chia kẹo
Xét bài toán: "Giả sử k và n là các số nguyên không
âm. Hỏi phương trình sau đây có bao nhiêu nghiệm?
• Cần thả n quả bóng giống nhau vào k phòng:
Room1, Room2, …, Roomk. Hỏi có bao nhiêu cách
phân bổ khác nhau?
• Nếu gọi tj là số lượng quả bóng thả vào Roomj, j =
1, 2, ..., n; thì vấn đề đặt ra dẫn về bài toán: Hỏi
phương trình sau đây
Nội dung thực tế:
Cần chia n cái kẹo cho k em bé B1, B2, …,Bk. Hỏi có
bao nhiêu cách chia khác nhau?
có bao nhiêu nghiệm nguyên không âm?
Chap02-25
Chap02-26
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Giải bài toán chia kẹo
Giải bài toán chia kẹo
•
•
Ví dụ, với n=16, k=6
• Xét dãy n+k-1 hộp. Tô k-1 hộp nào đó bởi màu xám;
các hộp xám này sẽ là vách ngăn: D1, D2, D(k-1).
D1
D2 D3
D4
D5
• Ví dụ: với n=16, k=6
Thả các quả bóng trước vách ngăn D1 vào Room1, các quả bóng
giữa vách ngăn D1 và D2 vào Room2, vân vân, và cuối cùng các
quả bóng sau D(k-1) vào Room(k).
D1
D2 D3
D4
D5
• Thả n quả bóng vào n hộp còn lại, mỗi hộp 1 quả.
Room1
Room6
Room2
Room3
Room4
Room5
Chap02-27
Chap02-28
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Giải bài toán chia kẹo
Giải bài toán chia kẹo
•
•
Bài toán chia kẹo 2: Có bao nhiêu cách chia n cái kẹo cho
k em bé mà trong đó mỗi em được ít nhất một cái? Hay
tương đương: Hỏi phương trình sau đây :
•
•
Như vậy, rõ ràng tồn tại tương ứng 1-1 giữa một cách phân bổ
các quả bóng và một cách chọn k-1 hộp trong số n+k-1 hộp
làm vách ngăn.
t1 + t2 + ... + tk = n.
Do có tất cả
k-1
n+k-1
C
có bao nhiêu nghiệm nguyên dương?
Trước hết chia cho mỗi em 1 cái kẹo, n-k cái kẹo còn lại sẽ
được chia cho k em bé. Bài toán dẫn về: Hỏi có bao nhiêu
cách chia n-k cái kẹo cho k em bé. Sử dụng kết quả bài
trước, ta có đáp số cần tìm là
cách chọn k-1 hộp từ n+k-1 hộp, nên đó cũng chính là số cách
phân bổ n quả bóng vào k phòng, cũng chính là số cách chia n
cái kẹo cho k em bé và cũng chính là số nghiệm nguyên không
âm của phương trình: t1 + t2 + . . . + tk = n.
k-1
n-1
•
Con số nói trên cũng được gọi là số tổ hợp lặp chập k từ n (k-
combination with repetition from n elements).
C
Chap02-29
Chap02-30
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
2.2.. Tính chất của hệ số tổ hợp
Tam giác PASCAL
• Tõ b) vµ c), ta cã thÓ tÝnh tÊt c¶ c¸c hÖ sè tæ hîp chØ b»ng phÐp
céng. C¸c hÖ sè nµy ®îc tÝnh vµ viÕt lÇn lît theo tõng dßng (mçi
dßng øng víi mét gi¸ trÞ n=0, 1, ...), trªn mçi dßng chóng ®îc
tÝnh vµ viÕt lÇn lît theo tõng cét (mçi cét øng víi mét gi¸ trÞ m =
0, 1, ..., n) theo b¶ng tam gi¸c díi ®©y:
• Díi ®©y lµ mét vµi tÝnh chÊt cña c¸c hÖ sè tæ hîp:
a) Đèi xøng
C(n,m) = C(n,n-m)
b) ĐiÒu kiÖn ®Çu
m
C(n,0) = 1; C(n,n) = 1, n ³ 0
c) C«ng thøc ®Ö qui
C(n,m) = C(n-1,m) + C(n-1, m-1), n > m > 0
• Điều kiện đầu suy trực tiếp từ định nghĩa của hệ số tổ hợp.
C¸c tính chất còn lại có thể chứng minh nhờ sử dụng công
thức trong định lý 4.
B¶ng nµy ®îc gäi lµ tam gi¸c Pascal.
Chap02-31
Chap02-32
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Tam giác PASCAL
Tam giác PASCAL
• Tam giác Pascal, n=8
• Mỗi số trong ô lục giác bằng tổng của hai số của hai ô
chung cạnh ở phía trên nó
Chap02-33
Chap02-34
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Khai triển nhị thức
Tổng quát hóa
• Định lý khai triển nhị thức có thể tổng quát cho trường hợp
phải khai triển lũy thừa của tổng nhiều hơn hai số hạng. Khi
khai triển (x+y+z)n, ta có n!/(i!´j!´k!) cách tạo ra số hạng
chứa i thừa số là x, j thừa số là y và k thừa số là z. Vì thế số
này chính là hệ số của số hạng xi yj zk trong khai triển đang
xét.
• C¸c hÖ sè tæ hîp cã liªn quan chÆt chÏ víi viÖc khai triÓn
luü thõa cña mét nhÞ thøc. ThËt vËy, trong tÝch
(x+y)n = (x+y) (x+y) . . . (x+y)
hÖ sè cña xm yn-m sÏ lµ sè c¸ch chän m nh©n tö (x + y) mµ
tõ ®ã ta lÊy ra x vµ ®ång thêi trong n-m nh©n tö cßn l¹i ta
lÊy ra y, nghÜa lµ
(x + y)n
0 y
m y
m
Cn x
• Ví dụ: Xét khai triển (x+y+z)7. Hệ số của xy2z4 là số cách
tạo ra số hạng dạng xyyzzzz. Số đó là bằng
=
n + ... +
n-m +...+ n xn
Cn
Cn
n
=
Ci xi yn-i
å
n
i=0
7! / (1!2!4!) = 105.
C«ng thøc trên ®îc gäi lµ khai triÓn nhÞ thøc Newton vµ c¸c hÖ
sè tæ hîp cßn ®îc gäi lµ c¸c hÖ sè nhÞ thøc.
Chap02-35
Chap02-36
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Multinomials
Multinomials
Khi k=2 ta có hệ số nhị thức C(n,n1).
Xét cách xây dựng dãy gồm n đối tượng từ k loại đối tượng sao cho trong đó có
n1 đối tượng loại 1, n2 đối tượng loại 2,..., nk đối tượng loại k (n1+…+nk = n).
Có thể chứng minh bằng cách khác: Nếu các đối tượng là không phân
biệt thì có n! cách. Chúng ta đã tính lặp lại n1!´…´nk! lần, từ đó suy ra
định lý.
Ký hiệu C(n; n1,...,nk) là số cách tạo dãy như vậy. Số này được gọi là hệ số bội
thức (multinomial).
Ví dụ: Có bao nhiêu từ gồm 11chữ cái lấy từ 11 chữ cái của từ
“MISSISSIPPI”?
n
æ
ç
è
ö
÷
ø
n!
Định lý.
C(n;n ,...,n ) =
=
1
k
Giải: Trong từ “MISSISSIPPI” có tất cả có 1 chữ cái “M”, 4 chữ “I”, 4
chữ “S”, và 2 chữ “P”. Ta xét cách xếp vị trí cho các chữ cái này trong
từ cần xây dựng. Có C(11,1) vị trí để xếp "M", tiếp đến có C(10,4) để
xếp vị trí cho 4 chữ "I", 4 chữ "S" được xếp vào 6 vị trí còn lại bởi
C(6,4) cách và cuối cùng có C(2,2) cách xếp 2 chữ "P".
n1,n2,...,nk
n1 !n2 !....nk !
CM. Ta lần lượt chọn các đồ vật. Đồ vật loại 1 có C(n,n1) cách chọn. Sau khi
đồ vật 1 đã chọn, đồ vật loại 2 có C(n-n1,n2) cách chọn, ..., cuối cùng đồ vật loại
k có C(nk,nk) cách chọn. Theo nguyên lý nhân
Theo nguyên lý nhân có:
C(n; n1,...,nk) = C(n,n1)´C(n-n1,n2)´ ...´C(nk,nk),
C(11,1)C(10,4)C(6,4)C(2,2) = 11!/(1! 4! 4! 2!) = 34650.
từ đó suy ra kết quả cần chứng minh.
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Tổ hợp
Lit kê mtập con
• Trong c«ng thøc Niuton đặt y=1 ta có:
• Bµi to¸n ®Æt ra lµ: Cho X = {1, 2, ... , n}. H·y liÖt kª c¸c tËp
con m phÇn tö cña X.
(1+ x)n
0
Cn Cn
1
=
+
x + ... +
+
nxn
Cnn-1 xn-1 Cn
(*)
• RÊt nhiÒu ®¼ng thøc vÒ hÖ sè tæ hîp ®îc suy tõ (*). Ch¼ng h¹n,
trong (*) chän x =1 ta ®îc:
• Mçi tËp con m phÇn tö cña X cã thÓ biÓu diÔn bëi bé cã thø
tù gåm m thµnh phÇn a = (a1, a2, ... , am) tho¶ m·n
C(n,0) + C(n,1) + ...+ C(n,n) = 2n,
tøc lµ nhËn ®îc kÕt qu¶ ®· biÕt: sè c¸c tËp con cña mét n-tËp
b»ng 2n, cßn nÕu chän x = -1 ta ®îc:
ai Î X , i = 1, 2,..., m ; a1 < a2 < ... < am
• Xét hai phương pháp liệt kê tất cả m-tập con của X:
ΏCây liệt kê
C(n,0) – C(n,1) + C(n,2) - ...+(-1)nC(n,n) = 0,
tøc lµ sè c¸c tËp con ch½n (cã sè phÇn tö lµ sè ch½n) b»ng c¸c sè
tËp con lÎ vµ b»ng 2n-1.
ΏThuật toán sinh m-tập con
• Nhiều tính chất của hệ số tổ hợp có thể thu được từ (*) bằng cách
lấy đạo hàm hoặc tích phân theo x hai vế của đẳng thức này một
số hữu hạn lần, sau đó gán cho x những giá trị cụ thể.
Chap02-39
Chap02-40
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Cây lit kê mtập con
Thuậtập con
• Mçi tËp con m phÇn tö cña X cã thÓ biÓu diÔn bëi bé cã thø
tù gåm m thµnh phÇn a = (a1, a2, ... , am) tho¶ m·n
• Cây liệt kê. Ví dụ, liệt kê các tập con 3 phần tử của {1,...,5}
ai Î X , i = 1, 2,..., m ; a1 < a2 < ... < am
• Tríc hÕt ta ®a vµo quan hÖ thø tù tõ ®iÓn trên tập tất cả m-
tập con của X :
Thành phần thứ 1
1
4
2
• Ta nãi tËp con a = (a1, a2,..., an) ®i tríc tËp con a' = (a'1,
a'2, ... , a'n) trong thø tù tõ ®iÓn vµ ký hiÖu lµ a p a', nÕu
tìm ®îc chØ sè k (1 £ k £ m) sao cho:
3
4
Thành phần thứ 2
2
4
3
4
5
3
4
a1 = a'1 , a2 = a'2, ... , ak-1 = a'k-1, ak < a'k .
Thành phần thứ 3
3
5
5
4
5
5
5
135
235
345
123 124 125 134
145 234
245
Chap02-41
42
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Vdụ
Thuật toán sinh kế tiếp
• C¸c tËp con 3 phÇn tö cña X = {1, 2, 3, 4, 5} ®îc liÖt kª theo
thø tù tõ ®iÓn nh sau
• TËp con ®Çu tiªn trong thø tù tõ ®iÓn lµ (1, 2, ... , m)
• TËp con cuèi cïng lµ (n-m+1, n-m+2, ..., n).
1
1
1
1
1
1
2
2
2
3
2
2
2
3
3
4
3
3
4
4
3
4
5
4
5
5
4
5
5
5
• Gi¶ sö a=(a1, a2, ... , am) lµ tËp con ®ang cã cha ph¶i cuèi
cïng, khi ®ã tËp con kÕ tiÕp trong thø tù tõ ®iÓn cã thÓ x©y
dùng b»ng c¸ch thùc hiÖn c¸c quy t¾c biÕn ®æi sau ®èi víi
tËp ®ang cã:
ΏTìm từ bên phải dãy a1, a2,..., am phÇn tö ai ¹ n-m+i,
ΏThay ai bëi ai + 1;
ΏThay aj bëi ai + j - i, víi j = i+1, i+2,..., m.
Chap02-43
Chap02-44
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Ví dụ
Chương . Lý thuyết tổ hợp
• Ví dụ: n = 6, m = 4. Giả sử đang có tập con (1, 2, 5, 6), cần
2.1. Hoán vị
xây dựng tập con kế tiếp nó trong thứ tự từ điển.
2.2. Tổ hợp (Combination)
lý bù trừ
•
1 2 5
6
3 4 5
6
(tập con cuối cùng)
2.4. Công thức đệ qui và hàm sinh
2.5. Số Stirling
• Ta có i=2, thay a2 = 3, và a3 = 4, a4 = 5, ta được tập con kế
tiếp (1, 3, 4, 5).
2.6. Nguyên lý các lồng chim bồ câu
Chap02-45
Chap02-46
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
2.. Nguyên lý bù trừ
2.3.Phát biểu nguyên lý
(The inclusion-exclusion principle)
• Nguyên lý bù trừ trong trường hợp hai tập:
2.3.1. Phát biểu nguyên lý
2.3.2. Các ví dụ áp dụng
|A È B| = |A| + |B| - |A Ç B|
(1)
Ví dụ: Giả sử A có 5 phần tử, B có 4 phần tử và có 2 phần tử
thuộc vào cả A lẫn B. Khi đó số phần tử của hợp hai tập là
5+4-2 = 7, chứ không phải là 5+4 = 9.
2 lần
• CM:
U
AÇB
A
B
1 lần
Chap02-47
Chap02-48
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Nguyên lý bù trừ
Nguyên lý bù trừ
• Mở rộng cho trường hợp 3 tập: Giả sử A, B, C là ba tập bất
|AÈB ÈC| = |A| +|B| + |C| - |AÇB| - |AÇC|- |BÇC)|+ |AÇBÇC)|
(2)
kỳ. Khi đó:
Có thể chứng minh bằng lập luận trực tiếp:
|AÈB ÈC|
• Trong tổng của ba số hạng đầu tiên các phần tử chung của A và
B được tính hai lần, vì vậy phải trừ bớt đi một lần. Tương tự
như vậy đối với các phần tử chung của A và C và các phần tử
chung của B và C.
= |(A ÈB)ÈC)|
= |AÈB| + |C| - |(AÈB)ÇC|
= |A| +|B| + |C| - |AÇB| - |(AÇC)È(BÇC)|
= |A| +|B| + |C| - |AÇB| - |AÇC|- |BÇC)|+ |AÇBÇC)|
Vậy
• Thế nhưng, trừ như vậy là hơi quá, bởi vì những phần tử chung
của cả ba tập A, B và C chưa được tính đến trong tổng của 6 số
hạng đầu tiên. Vì vậy phải cộng bù lại.
|AÈBÈC| =
|A| +|B| + |C| - |AÇB| - |AÇC|- |BÇC)|+ |AÇBÇC)| (2)
Chap02-49
Chap02-50
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Ví dụ minh họa
Nguyên lý bù trừ
• §Þnh lý. Gi¶ sö A1, A2, ... , Am lµ c¸c tËp h÷u h¹n. Khi ®ã
dt = 4-3=1
U
C
m-1Nm
dt = 2-1=1
N(
È
A1 A2
È ... È ) =
Am
-
+ ... +
(-1)
N1 N2
B Ç C
AÇ C
trong ®ã
AÇ B ÇC
Nk =
N(A Ç A Ç...Ç A ), k =1,2,...,m
dt = 1
å
i1
i2
ik
A
AÇ B
1£i1<i2 <...<ik £m
(Nk lµ tæng sè phÇn tö cña tÊt c¶ c¸c tËp lµ giao cña k tËp
lÊy tõ m tËp ®· cho, nãi riªng
•
•
Giả sử mỗi hình tròn có diện tích là 4. Giao của hai hình tròn có diện
tích 2, Giao của cả ba hình tròn có diện tích 1. Hỏi tổng diện tích bị phủ
bởi ba hình tròn là bao nhiêu?
| AÈBÈC |=| A| +| B| +|C | -| AÇB| -| BÇC | -|C Ç A| +| AÇBÇC |
A=4+4+4 – 2 -2 -2 + 1 = 12 – 6 + 1 = 7.
N1
= N(A1) + ... + N(Am),
Nm = N(A1 Ç A2 Ç ... Ç Am) ).
Chap02-51
Chap02-52
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Nguyên lý bù trừ
Nguyên lý bù trừ
•
•
•
Chøng minh.
• B©y giê ta ®ång nhÊt tËp Ak víi tÝnh chÊt Ak cho trªn mét tËp X
nµo ®ã vµ ®Õm xem cã bao nhiªu phÇn tö cña X kh«ng tho¶ m·n
bÊt cø mét tÝnh chÊt Ak nµo c¶.
Chó ý r»ng, sè c¸c giao cña k tËp lÊy tõ m tËp b»ng C(m,k), k=1,2,..., m.
§Ó chøng minh c«ng thøc cña nguyªn lý bï trõ, ta sÏ tÝnh xem mçi phÇn
• Gäi`N lµ sè cÇn ®Õm. Do A1 È A2 È . . . È Am lµ tËp tÊt c¶ c¸c
phÇn tö cña X tho¶ m·n Ýt nhÊt mét trong sè m tÝnh chÊt ®· cho,
nªn ta cã:
tö cña tËp A1 È A2 È . . . È Am ®îc ®Õm bao nhiªu lÇn trong vÕ ph¶i:
•
XÐt mét phÇn tö tuú ý a Î A1 È A2 È . . . È Am. Gi¶ sö a lµ phÇn tö cña
k tËp trong sè m tËp ®· cho. Khi ®ã a ®îc ®Õm ë vÕ ph¶i cña c«ng thøc
`N = N(X ) N(A1 È A2 È . . . È Am)
= N(X ) N1 + N2 -...+( 1)mNm
C(k,1) – C(k,2)+ ... + (-1)k-1C(k,k)
lÇn. Do
trong ®ã Nk lµ tæng c¸c phÇn tö cña X tho¶ m·n k tÝnh chÊt lÊy tõ
m tÝnh chÊt ®· cho.
C(k,1) – C(k,2)+ ... + (-1)k-1C(k,k)
= 1 – [C(k,0) – (C(k,1) – C(k,2)+ ... + (-1)k-1C(k,k))] = 1 – (1 –
1)k = 1
• C«ng thøc thu ®îc cho phÐp tÝnh`N qua c¸c Nk trong trêng hîp
c¸c sè nµy dÔ tÝnh to¸n h¬n.
Tõ ®ã suy ra ®¼ng thøc cÇn chøng minh lµ ®óng
Chap02-53
Chap02-54
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Các ví dụ áp dụng
Ví dụ
• VÝ dô 1. Hái trong tËp X = {1, 2, ..., 10000} cã bao nhiªu sè
kh«ng chia hÕt cho bÊt cø sè nµo trong c¸c sè 3, 4, 7?
N2 = N(A3 Ç A4) + N(A3 Ç A7) + N(A4 Ç A7)
= [10000/(3´4)] + [10000/(3´7)] + [10000/(4´7)]
= 833 + 476 + 357 = 1666,
• Gi¶i. Gäi
Ai ={ x Î X : x chia hÕt cho i} , i = 3, 4, 7.
N3 = N(A3 Ç A4 Ç A7) = [10000/(3´4´7) ] = 119,
ë ®©y ký hiÖu [ r ] ®Ó chØ sè nguyªn lín nhÊt kh«ng vît qu¸ r.
• Tõ ®ã sè lîng c¸c sè cÇn ®Õm lµ
• Khi ®ã A3 È A4 È A7 lµ tËp c¸c sè trong X chia hÕt cho Ýt nhÊt mét
trong 3 sè 3, 4, 7, suy ra sè lîng c¸c sè cÇn ®Õm sÏ lµ
N(X) – N(A3 È A4 È A7) = 10000 – (N1 – N2 + N3).
• Ta cã
10000 - 7261 + 1666 - 119 = 4286.
N1 = N(A3) + N(A4) + N(A7)
= [10000/3] + [10000/4] + [10000/7]
= 3333 + 2500 + 1428 =7261,
Chap02-55
Chap02-56
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Ví dụ 3
Ví dụ
• Ví dụ 3. Đếm số nghiệm nguyên không âm của phương
trình x1 + x2 + x3 = 11, thỏa mãn x1 £ 3, x2 £ 4, x3 £ 6.
• Giải. Xét các tính chất
• VÝ dô 2. Cã bao nhiªu x©u nhÞ ph©n ®é dµi 10 hoÆc lµ b¾t
®Çu bëi 00 hoÆc lµ kÕt thóc bëi 11?
• Gi¶i. Ta cã
P1: x1 > 3 ; P2: x2 > 4; P3: x3 > 6.
ΏSè x©u nhÞ ph©n ®é dµi 10 b¾t ®Çu bëi 00 lµ 28 = 256
ΏSè x©u nhÞ ph©n ®é dµi 10 kÕt thóc bëi 11 lµ 28 = 256.
• Lời giải cần đếm là lời giải không thỏa mãn bất cứ tính chất
nào trong P1, P2, P3. Theo nguyên lý bù trừ số lượng lời giải
cần đếm là bằng
ΏSè x©u nhÞ ph©n ®é dµi 10 b¾t ®Çu bëi 00 vµ kÕt thóc bëi
N – N1 + N2 – N3.
11 lµ 26 = 64.
• Ta cần tính các số N, N1 , N2 , N3.
• Theo nguyªn lý bï trõ suy ra sè x©u nhÞ ph©n hoÆc b¾t ®Çu
• Tổng số nghiệm nguyên không âm của phương trình là
bằng N = C(3+11–1, 11) = 78.
bëi 00 hoÆc kÕt thóc bëi 11 lµ
256 + 256 - 64 = 448.
Chap02-57
Chap02-58
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Ví dụ 3
Bài toán bỏ thư
•
Để đếm số lời giải thỏa mãn tính chất x1 > 3 ta lập luận như sau: Đổi
biến y1 = x1 - 4, số nghiệm nguyên không âm của phương trình x1 + x2 +
x3 = 11 thỏa mãn tính chất x1 > 3 chính là bằng số nghiệm nguyên
không âm của phương trình y1 + x2 + x3 = 11 – 4 = 7. Vậy
• Bµi to¸n bá th. Cã n l¸ th vµ n phong b× ghi s½n ®Þa chØ. Bá
ngÉu nhiªn c¸c l¸ th vµo c¸c phong b×. Hái x¸c suÊt ®Ó x¶y
ra kh«ng mét l¸ th nµo bá ®óng ®Þa chØ lµ bao nhiªu?
N(P1) = C(3+7–1,7) = 36.
• Gi¶i: §¸nh sè c¸c l¸ th tõ 1 ®Õn n, c¸c phong b× t¬ng øng
víi chóng còng ®îc ®¸nh sè tõ 1 ®Õn n. Mçi c¸ch bá th vµo
phong b× cã thÓ biÓu diÔn bëi bé cã thø tù
•
•
•
•
•
•
•
•
Tương tự như vậy ta có
Số lời giải thỏa mãn tính chất x2>4: N(P2) = C(3+6-1,6) = 28.
Số lời giải thỏa mãn tính chất x3>6: N(P3) = C(3+4-1,4) = 15.
Số lời giải thỏa mãn tính chất x1>3 và x2>4: N(P1ÇP2)=C(3+2-1,2)=6.
Số lời giải thỏa mãn tính chất x1>3 và x3>6: N(P1ÇP3)=C(3+0-1,0)=1.
Số lời giải thỏa mãn tính chất x2>4 và x3>6: N(P2ÇP3)=0.
Số lời giải thỏa mãn tính chất x1>3, x2>4 và x3>6: N(P1ÇP2ÇP3)=0.
Ta thu được số lượng lời giải thỏa mãn điều kiện đầu bài là
78 – 36 – 28 –15 + 6 + 1 + 0 – 0 = 6.
(p1, p2, ..., pn),
trong ®ã pi lµ phong b× bá l¸ thø thø i. Tõ ®ã suy ra tån t¹i t-
¬ng øng 1-1 gi÷a mét c¸ch bá th vµo phong b× víi mét ho¸n
vÞ cña n sè. VËy cã tÊt c¶ n! c¸ch bá th.
Chap02-59
Chap02-60
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Nguyên lý bù trừ: Bài toán bỏ thư
Nguyên lý bù trừ: Bài toán bỏ thư
• Chó ý lµ
Nk =
N(A Ç A Ç...Ç A ), k =1,2,...,n
• VÊn ®Ò cßn l¹i lµ ®Õm sè c¸ch bá th sao cho kh«ng cã l¸ th
å
i1
i2
ik
1£i1<i2 <...<ik £n
nµo ®óng ®Þa chØ.
nghÜa lµ, Nk lµ tæng theo mäi c¸ch lÊy k l¸ th tõ n l¸, víi mçi c¸ch
lÊy k l¸ th, cã (n-k)! c¸ch bá trong ®ã k l¸ nµy ®óng ®Þa chØ, ta nhËn
®îc:
• Gäi X lµ tËp hîp tÊt c¶ c¸c c¸ch bá th vµ Ak lµ tÝnh chÊt l¸ th
thø k bá ®óng ®Þa chØ. Khi ®ã, theo nguyªn lý bï trõ ta cã:
Nk = C(n, k).(n-k)! = n! / k!
`N = N(X ) N1 + N2 ...+( 1)nNn
• Do ®ã
(-1)n
n!
trong ®ã`N lµ sè cÇn t×m, N(X) = n!, cßn Nk lµ sè tÊt c¶ c¸c
c¸ch bá th sao cho cã k l¸ th ®óng ®Þa chØ.
1
1
N = n!(1-
+
- ... +
)
1! 2!
• VËy x¸c suÊt cÇn t×m lµ:
(-1)n
n!
1
1
1-
+
- ... +
1! 2!
Chap02-61
Chap02-62
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Số lượng toàn ánh
Nguyên lý bù trừ
Toàn ánh: Ánh xạ f từ A vào B là toàn ánh nếu với mỗi phần tử b thuộc B
đều tìm được a thuộc A sao cho f(a)=b.
• Mét ®iÒu lý thó lµ x¸c suÊt nµy dÇn ®Õn e-1 (nghÜa lµ cßn lín
h¬n 1/3) khi n kh¸ lín. Sè thu ®îc trong bµi to¸n trªn ®îc
gäi lµ sè mÊt thø tù (number of derangements) vµ ®îc ký
hiÖu lµ Dn.
Giả sử A={a1, a2, ..., am } và B={b1, b2, ..., bn }, m ³ n.
Hỏi có bao nhiêu toàn ánh từ A vào B?
A
B
f
Ta muốn tất cả bi đều thuộc miền giá trị của f.
Gọi Pi là tính chất "bi không nằm trong
miền giá trị của f ".
• Díi ®©y lµ mét vµi gi¸ trÞ cña Dn, cho ta thÊy Dn t¨ng nhanh
nh thÕ nµo khi n t¨ng:
Khi đó ta cần đếm số ánh xạ không có bất
cứ tính chất nào trong số các tính chất P1,..., Pn.
n
2
1
3
2
4
5
6
7
8
9
10
11
Dn
9 44 265 1854 14833 133496 1334961 4890741
Ký hiệu:
Pi = tập các ánh xạ từ A vào B có tính chất Pi , i=1, 2, ...,n.
Không tồn tại điểm không có mũi tên đi vào
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội Chap02-64
Chap02-63
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Số lượng toàn ánh
Số lượng toàn ánh
•
•
Theo nguyên lý bù trừ số lượng toàn ánh cần đếm là:
• Ta viết gọn công thức
N – N1 + N2 – ... +(–1)n Nn.
nm – C(n,1)(n-1)m + C(n,2)(n-2)m – ...+ (-1)n-1C(n,n-1)1m.
Nk =
N(P ÇP Ç...ÇP ), k =1,2,...,n
å
i1
i2
ik
1£ i1< i2 <...< ik £n
dưới dạng sau đây:
Ta có:
ΏN - số ánh xạ từ m-tập A vào n-tập B: nm
nm -Cn1 (n -1)m +Cn2 (n - 2)m -...+ (-1)n-1Cnn-11m
ΏDo N(Pi) - số ánh xạ không có bi trong miền giá trị,
nên N(Pi) = (n-1)m, do đó N1 = C(n,1) (n-1)m
= Cn0 (n -0)m -Cn1 (n -1)m +Cn2 (n - 2)m -...+ (-1)n-1Cnn-11m +(-1)n Cnn 0m
n
=
(-1)k Ck (n - k)m
ΏDo N(PiÇPj) - số ánh xạ không có bi và bj trong miền giá trị,
å
n
nên N(PiÇPj) = (n-2)m , do đó N2 = C(n,2) (n-2)m.
k=0
ΏTổng quát ta có
N(P ÇP Ç...ÇP ) = (n-k)m
i1
i2
ik
dó đó Nk = C(n,k) (n - k)m.
•
Từ đó ta có số lượng toàn ánh là:
nm – C(n,1)(n-1)m + C(n,2)(n-2)m – ...+ (-1)n-1C(n,n-1)1m.
Chap02-65
Chap02-66
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Chương . Lý thuyết tổ hợp
2.4 Công thức đệ qui và hàm sinh
2.4.1. Xây dựng công thức đệ qui
2.4.2. Giải công thức đệ qui
2.1. Hoán vị
2.2. Tổ hợp (Combination)
lý bù trừ
2.4.3. Hàm sinh và công thức đệ qui
. Công thức đệ qui và hàm sinh
ng
2.6. Nguyên lý các lồng chim bồ câu
Chap02-67
Chap02-68
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
2.4.. Xây dựng công thức đệ qui
2.4.1 Xây dựng công thức đệ qui
• Ví dụ 1. Công thức đệ qui cho C(n,k) - số lượng tập con k
phần tử của tập n phần tử X.
• Công thức đệ qui là công thức cho phép tính giá trị
của các đại lượng theo từng bước, dựa vào các giá
trị tính ở các bước trước và một số giá trị đầu.
• Theo định nghĩa
C(n,0) = 1 và C(n,n) = 1
(1)
• Giả sử n > k > 0, ta xây dựng công thức đệ qui để tính
C(n,k). Cố định một phần tử x Î X. Phân tập các tập con k
phần tử của X ra thành 2 tập:
• Là một kỹ thuật quan trọng cho phép giải nhiều bài
toán đếm
ΏA – tập các tập con k phần tử có chứa x;
ΏB – tập các tập con k phần tử không chứa x.
• Rõ ràng A và B tạo thành phân hoạch của tập tất cả các tập
con k phần tử của X.
Chap02-69
Chap02-70
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
2.4.1 Xây dựng công thức đệ qui
2.4.1 Xây dựng công thức đệ qui
• Công thức đệ qui (2) cùng với điều kiện đầu (1) cho phép
tính giá trị của C(n, k) với mọi giá trị của n và k.
• Rõ ràng A và B tạo thành phân hoạch của tập tất cả các tập con
k phần tử của X. Do đó, theo nguyên lý cộng:
• Công thức đệ qui (2) cho phép viết hàm đệ qui sau đây để
tính giá trị của C(n,k):
C(n,k) = |A| + |B|.
• Ta có:
ΏDo mỗi tập con trong A có chứa x, nên k-1 phần tử còn lại
của nó là một tập con k-1 phần tử của tập X \ {x}, suy ra
function C(n,k: integer): longint;
begin
|A| = C(n-1,k-1)
ΏTương tự như vậy,
|B| = C(n-1, k)
if (k=0) or (k=n) then C:=1
else C:= C(n-1,k-1) + C(n-1,k);
end;
• Vậy,
C(n,k) = C(n-1, k-1) + C(n-1,k), n > k > 0
(2)
Chap02-71
Chap02-72
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
2.4.1 Xây dựng công thức đệ qui
2.4.1 Xây dựng công thức đệ qui
•
•
VÝ dô 2. Trªn mÆt ph¼ng, kÎ n ®êng th¼ng sao cho kh«ng cã 2 ®êng nµo song
• Hàm vừa xây dựng không cho một cách tính hiệu quả. Thực
vậy, nếu gọi C*(n,k) là số phép toán “gán giá trị” phải thực
hiện bởi lệnh gọi hàm C(n,k), dễ thấy
C*(n,0) =1; C*(n,n) = 1
C*(n,k) = C*(n-1, k-1) + C*(n-1,k)+1, n > k > 0
tức là C*(n,k) thoả mãn công thức đệ qui như hệ số tổ hợp
C(n, k), do đó:
C*(n,k) ~ n!/[k!(n-k)!]
và giá trị này là rất lớn khi n lớn và k = n/2.
song vµ 3 ®êng nµo ®ång quy. Hái mÆt ph¼ng ®îc chia thµnh mÊy phÇn ?
Gi¶i: Gäi sè phÇn mÆt ph¼ng ®îc chia bëi n ®êng th¼ng lµ Sn. Râ ràng
S1 = 2,
(3)
•
•
XÐt n > 1, ta tìm c«ng thøc ®Ö qui cho Sn.
Gi¶ sö ®· kÎ n-1 ®êng th¼ng, khi ®ã mÆt ph¼ng ®îc chia ra lµm Sn-1 phÇn. B©y
giê kÎ thªm ®êng th¼ng thø n. Đêng th¼ng nµy c¾t n-1 ®êng th¼ng ®· vÏ t¹i n-
1 giao ®iÓm. C¸c giao ®iÓm nµy chia ®êng th¼ng thø n ra lµm n phÇn, mçi
phÇn nh vËy sÏ chia mét phÇn nµo ®ã sinh bëi n-1 ®êng th¼ng vÏ tríc ®ã ra
lµm hai phÇn. Tõ ®ã suy ra, sau khi vÏ ®êng th¼ng thø n sè phÇn tăng thªm lµ
n. Tõ ®ã nhËn ®îc c«ng thøc ®Ö qui
• Dễ dàng xây dựng một hàm lặp để tính giá trị của C(n, k)
một cách hiệu quả hơn.
Sn = Sn-1 + n, n ³ 2
(4)
Chap02-73
Chap02-74
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
2.4.1 Xây dựng công thức đệ qui
2.4.1 Xây dựng công thức đệ qui
• Để tìm công thức trực tiếp, ta cộng các hệ thức Sk = Sk-1 + k víi
k = 2, ..., n.
G42
G41
Phương pháp thế:
S1 = 2
Sn = Sn-1+n
G32
phần 4
S2 = S1 + 2
S3 = S2 + 3
...
= Sn-2+(n-1)+n
= Sn-3 +(n-2)+(n-1) +n
= ....
l1
G22
G31
phần 3
G12
G21
= S1+2+3+....+(n-1)+n
= 2+2+3+....+(n-1)+n
Sn-1= Sn-2 + (n-1)
Sn = Sn-1 + n
phần 2
G11
phần 1
Sn = 2 + 2 + 3 + ...+(n-1) + n = n(n+1)/2 + 1 = (n2+n+2)/2
l4
l3
l2
Chap02-75
Chap02-76
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
2.4.1 Xây dựng công thức đệ qui
2.4.1 Xây dựng công thức đệ qui
• Do đó, theo nguyên lý cộng:
fn = |A| + |B|.
• Ví dụ 3. Xây dựng công thức đệ qui cho fn là số chỉnh hợp lặp
chập n từ hai phần tử 0, 1 (cũng chính là xâu nhị phân độ dài n)
không chứa hai số 0 liền nhau.
• Ta có:
ΏDo mỗi chỉnh hợp trong A chứa 1 ở vị trí đầu tiên, nên n-1 phần tử còn lại
sẽ tạo thành một chỉnh hợp cần đếm độ dài n-1, suy ra
• Giải. Ta có
|A| = fn-1
f1 = 2; f2 = 3
ΏDo mỗi chỉnh hợp trong B chứa 0 ở vị trí đầu tiên, nên vị trí thứ hai của
nó phải là 1 còn n-2 phần tử còn lại sẽ tạo thành một chỉnh hợp cần đếm
độ dài n-2, suy ra
Giả sử n > 2. Phân tập các chỉnh hợp cần đếm ra thành 2 tập:
ΏA – tập các chỉnh hợp cần đếm chứa 1 ở vị trí đầu tiên;
ΏB – tập các chỉnh hợp cần đếm chứa 0 ở vị trí đầu tiên;
|B| = fn-2
• Vậy, ta thu được công thức đệ qui
f1 = 2; f2 = 3;
• Rõ ràng A và B tạo thành phân hoạch của tập tất cả các chỉnh
hợp cần đếm.
fn = fn-1 + fn-2, n > 2
(5)
Chap02-77
Chap02-78
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
2.4.1 Xây dựng công thức đệ qui
2.4.1 Xây dựng công thức đệ qui
• Ví dụ 4. Xây dựng công thức đệ qui cho Qn là số lượng cách phủ
lưới ô vuông kích thước 2´n bằng các quân bài domino.
• Giải. Ta có
• Do đó, theo nguyên lý cộng:
Qn = |A| + |B|.
...
...
• Ta có:
A
Q1 = 1; Q2 = 2 (xem hình vẽ)
Ώ|A| = Qn-1
Ώ|B| = Qn-2
• Giả sử n > 2. Phân tập các cách phủ cần đếm ra thành 2 tập:
...
...
B
ΏA – tập các cách phủ trong đó ô ở góc trên trái được phủ bởi
• Vậy, ta thu được công thức đệ qui
quân bài nằm đứng;
Q1 = 1; Q2 = 2;
ΏB – tập các cách phủ trong đó ô ở góc trên trái được phủ bởi
Qn = Qn-1 + Qn-2, n > 2
(6)
quân bài nằm ngang.
• Rõ ràng A và B tạo thành phân hoạch của tập tất cả các cách phủ
cần đếm.
Chap02-79
Chap02-80
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Toán rời rạc – NGUYỄN ĐỨC NGHĨA – Bộ môn KHMT – ĐHBK Hà nội
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Toán rời rạc - Chương 2: Tổ hợp (Combinatorics) - Nguyễn Đức Nghĩa", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
- bai_giang_toan_roi_rac_chuong_2_to_hop_combinatorics_nguyen.pdf