You are on page 1of 34

Khoa Công nghệ thông tin

Bộ môn Khoa học máy tính


-------------o0o------------

BÁO CÁO THẢO LUẬN

Môn học :Toán rời rạc


Chủ đề: Chỉnh hợp và tổ hợp suy rộng
---- Nhóm 2 ----

Các sinh viên:


1. Nguyễn Thị Thanh
2. Dương Bách Tiến
3. Nguyễn Đức Trọng
4. Nguyễn Thị Phượng
5. Nguyễn Thị Quyến
6. Tạ Văn Trung
7. Nguyễn Xuân Trường

1
Lời mở đầu
Lý thuyết tổ hợp là 1 phần quan trọng của toán rời rạc chuyên nghiên cứu sự
phân bố các phần tử vào các tập hợp.Thông thường các phần tử này là hữu hạn và
việc phân bố chúng phải thỏa mãn những điều kiện nhất định nào đó tùy theo yêu
cầu của bài toán cần nghiên cứu.Mỗi cách phân bố như thế gọi là một cấu hình tổ
hợp.Chủ đề này đã được nghiên cứu vào thế kỉ 17,khi những câu hỏi về tổ hợp
được đưa ra trong các công trình nghiên cứu hay các trò chơi may rủi.Liệt kê,đếm
các đối tượng có những tính chất nào đólaf một phần quan trọng của lý thuyết tổ
hợp.Chúng ta cần phải đếm các đối tượng để giải nhiều bài toán khác nhau.Hơn
nữa các kĩ thuật đếm được dùng rất nhiều khi tính xác suất của các biến cố hay
trong đánh giá độ phức tạp của thuật toán.

Trong bài báo cáo này chúng tôi sẽ trình bày các nội dung cơ bản về chỉnh hợp
và tổ hợp suy rộng cùng với các vấn đề liên quan . Cuối báo cáo là thuật toán liệt
kê tất cả các hoán vị của các kí tự trong một xâu ( Với files chương trình và mã
nguồn đi kèm trong CD).

Mục đính của bài thảo luận :

 Cung cấp kiến thức cơ bản về hoán vị, tổ hợp và chỉnh hợp suy rộng
 Minh họa thuật toán liệt kê các hoán vị của các kí tự trong một xâu cho
trước.

Dù đã rất cố gắng nhưng với thời gian hạn chế chắc chắn báo cáo này vẫn còn
rất nhiều thiếu sót, rất mong nhận được sự góp ý của thầy cô và các bạn.
Nhóm các sinh viên Thanh, Tiến, Trọng, Phượng, Quyến, Trung, Trường xin cảm
ơn!

2
BÁO CÁO THẢO LUẬN

Môn học :Toán rời rạc


Chủ đề: Chỉnh hợp và tổ hợp suy rộng

Các sinh viên:


8. Nguyễn Thị Thanh
9. Dương Bách Tiến
10. Nguyễn Đức Trọng
11. Nguyễn Thị Phượng
12. Nguyễn Thị Quyến
13. Tạ Văn Trung
14. Nguyễn Xuân Trường

3
Mục lục
1. Lời mở đầu …………………………………………………… 2

2. Cơ sở phép đếm ………………………………………………. 5

3. Chỉnh hợp …………………………………………………….. 13

4. Hoán vị ………………………………………………………. 15

5. Tổ hợp ……………………………………………………….. 19

6. Thuật toán liệt kê các hoán vị của các kí tự trong xâu ……….. 23

7. Một số nội dung mở rộng …………………………………… 24

8. Tài liệu tham khảo …………………………………………… 32

9. Lời kết thúc ………………………………………………….. 33

10. Nhận xét của giáo viên phụ trách …………………..……….. 33

4
Nội dung
1.Cơ sở của phép đếm

1.1Quy tắc cộng


Nếu một công việc có thể được thực hiện bằng một trong n cách loại trừ
lẫn nhau: k1, k2, …, kn. Trong đó để thực hiện theo cách ki lại có ti phương
án khác nhau (i=1..n). Khi đó tổng số phương án để thực hiện công việc ban
đầu là: t1 + t2 + … + t n.

Ví dụ 1. Giả sử cần chọn hoặc một cán bộ hoặc một sinh viên tham gia
một hội đồng của
một trường đại học. Hỏi có bao nhiêu cách chọn vị đại biểu này nếu như có
37 cán bộ và 63 sinh viên.

Giải: Gọi việc thứ nhất là chọn một cán bộ từ tập cán bộ ta có 37 cách.
Gọi việc thứ hai là chọn một sinh viên từ tập sinh viên ta có 63 cách. Vì tập cán
bộ và tập sinh viên là rời nhau, theo nguyên lý cộng ta có tổng số cách chọn vị
đại biểu này là 37 + 63 = 100 cách chọn.

Ví dụ 2. Một đoàn vận động viên gồm môn bắn súng và bơi được cử đi
thi đấu ở nước ngoài. Số vận động viên nam là 10 người. Số vận động viên thi
bắn súng kể cả nam và nữ là 14 người. Số nữ vận động viên thi bơi bằng số vận
động viên nam thi bắn súng. Hỏi đoàn có bao nhiêu người.

Giải: Chia đoàn thành hai tập, tập các vận động viên nam và tập các vận
động viên nữ. Ta nhận thấy tập nữ lại được chia thành hai: thi bắn súng và thi
bơi. Thay số nữ thi bơi bằng số nam thi bắn súng, ta được số nữ bằng tổng số
vận động viên thi bắn súng. Từ đó theo nguyên lý cộng toàn đoàn có 14 + 10 =
24 người.

5
Ví dụ 3. giá trị của biến k sẽ bằng bao nhiêu sau khi thực hiện đoạn chương
trình sau:
k:= 0

for i1:= 1 to n1 do

k:=k+1
for i2:= 1 to n2
k:=k+1

..........

..........

for im:= 1 to nm

k:=k+1

Giải: Coi mỗi vòng for là một công việc, do đó ta có m công việc T1,
T2,.., Tm. Trong đó Ti thực hiện bởi ni cách (i= 1, 2,.., m). Vì các vòng for
không lồng nhau hay các công việc không thực hiện đồng thời nên theo nguyên
lý cộng tổng tất cả các cách để hoàn thành T1, T2,.., Tm là k= n1 + n2 +.. + nm.

1.2Quy tắc nhân


Giả sử một nhiệm vụ nào đó được tách ra hai công việc. Việc thứ nhất
được thực hiện bằng n1 cách, việc thứ hai được thực hiện bằng n2 cách sau khi
việc thứ nhất đã được làm, khi đó sẽ có n1.n2 cách thực hiện nhiệm vụ này.
Nguyên lý nhân có thể được phát biểu tổng quát bằng ngôn ngữ tập hợp như
sau:

Nếu A1, A2,.., Am là những tập hợp hữu hạn, khi đó số phần tử của tích đề
các các tập này bằng tích số các phần tử của mỗi tập thành phần. Hay đẳng thức:
N (A1× A2×.. Am ) = N (A1) N (A2)... N (Am).

Nếu A1 = A2 =.. Am thì N(Ak) = N(A)k

Ví dụ 1. Giá trị của k sẽ bằng bao nhiêu sau khi ta thực hiện đoạn chương

6
trình sau:
k:=0

for i1 = 1 to n1

for i2 = 1 to n2

………

for in =1 to nm

k:=k +1

Giải: Giá trị khởi tạo k=0. Mỗi vòng lặp kồng nhau đi qua giá trị của k
được tăng lên 1 đơn vị. Gọi Ti là việc thi hành vòng lặp thứ i. Khi đó, số lần
vòng lặp là số cách thực hiện công việc. Số cách thực hiện công việc Tj là nj
(j=1,2,.., n). Theo qui tắc nhân ta vòng lặp kép được duyệt qua n1 +n2 +..+nm
lần và chính là giá trị của k.
Ví dụ 2. Người ta có thể ghi nhãn cho những chiếc ghế của một giảng
đường bằng một chữ cái và sau đó là một số nguyên nhỏ hơn 100. Bằng cách
như vậy hỏi có nhiều nhất bao nhiêu chiếc ghế có thể ghi nhãn khác nhau.
Giải: Có nhiều nhất là 26 x 100 = 2600 ghế được ghi nhãn. Vì kí tự gán
nhãn đầu tiên là một chữ cái vậy có 26 cách chọn các chữ cái khác nhau để ghi
kí tự đầu tiên, tiếp theo sau là một số nguyên dương nhỏ hơn 100 do vậy có 100
cách chọn các số nguyên để gán tiếp sau của một nhãn. Theo qui tắc nhân ta
nhận được 26 x 100 = 2600 nhãn khác nhau.
Ví dụ 3. Có bao nhiêu xâu nhị phân có độ dài 7.
Giải: một xâu nhị phân có độ dài 7 gồm 7 bít, mỗi bít có hai cách chọn
(hoặc giá trị 0 hoặc giá trị 1), theo qui tắc nhân ta có 2.2.2.2.2.2.2 = 27 = 128
xâu bít nhị phân độ dài 7.
Ví dụ 4. Có bao nhiêu hàm đơn ánh xác định từ một tập A có m phần tử
nhận giá trị trên tập
B có n phần tử.
Giải: Trước tiên ta nhận thấy, nếu m >n thì tồn tại ít nhất hai phần tử khác
nhau của A cùng
nhận một giá trị trên B, như vậy với m>n thì số các hàm đơn ánh từ A→B là 0.
Nếu m<=n, khi đó
phần tử đầu tiên của A có n cách chọn, phần tử thứ hai có n-1 cách chọn,.., phần
tử thứ k có n-k+1

7
cách chọn. Theo qui tắc nhân ta có n(n-1) (n-2)...(n-m+1) hàm đơn ánh từ tập A
sang tập B.

Ví dụ 5. Dạng của số điện thoại ở Bắc Mỹ được qui định như sau: số điện
thoại gồm 10 chữ số được tách ra thành một nhóm mã vùng gồm 3 chữ số, nhóm
mã chi nhánh gồm 3 chữ số và nhóm mã máy gồm 4 chữ số. Vì những nguyên
nhân kỹ thuật nên có một số hạn chế đối với một
số con số. Ta giả sử, X biểu thị một số có thể nhận các giá trị từ 0..9, N là số có
thể nhận các chữ
số từ 2..9, Y là các số có thể nhận các chữ số 0 hoặc 1.
Hỏi theo hai dự án đánh số NYX NNX XXXX và NXX NXX XXXX có
bao nhiêu số điện thoại được đánh số khác nhau ở Bắc Mỹ.
Giải: đánh số theo dự án NYX NNX XXXX được nhiều nhất là:

8 x 2 x 10 x 8 x 8 x10 x10 x10 x 10 x 10 x10 = 2 x 83 x


106 = 1 024. 106
đánh số theo dự án NXX NXX XXXX được nhiều nhất là:

8 x 10 x 10 x 8 x 10 x10 x10 x10 x 10 x 10 x10 = 82


x 108 = 64. 108
Ví dụ 6. Dùng qui tắc nhân hãy chỉ ra rằng số tập con của một tập S hữu
hạn là 2N(S).
Giải: Ta liệt kê các phần tử của tập S là s1, s2,.., sN(S). Xây dựng một
xâu bít nhị phân dài
N(S) bít, trong đó nếu bít thứ i có giá trị 0 thì phần tử si ∉S, nếu bít thứ i có giá
trị 1 thì phần tử
si∈S (i=1, 2,.., N(S) ). Như vậy, theo nguyên lý nhân, số tập con của tập hợp S
chính là số xâu bít
nhị phân có độ dài N(S). Theo ví dụ 3, chúng ta có 2N(S) xâu bít nhị phân độ dài
N(S).

1.3. Nguyên lý bù trừ


Khi hai công việc có thể được làm đồng thời, ta không thể dùng quy tắc
cộng để tính số cách thực hiện nhiệm vụ gồm cả hai việc. Để tính đúng số cách
thực hiện nhiệm vụ này ta cộng số cách làm mỗi một trong hai việc rồi trừ đi số

8
cách làm đồng thời cả hai việc. Ta có thể phát biểu nguyên lý đếm này bằng ngôn
ngữ tập hợp. Cho A1, A2 là hai tập hữu hạn, khi đó

|A1  A2| = |A1| + |A2|  |A1  A2|.

Từ đó với ba tập hợp hữu hạn A1, A2, A3, ta có:

|A1  A2  A3| = |A1| + |A2| + |A3|  |A1  A2|  |A2  A3|  |A3  A1| + |A1  A2
 A3|,

và bằng quy nạp, với k tập hữu hạn A1, A2, ..., Ak ta có:

| A1  A2  ...  Ak| = N1  N2 + N3  ... + (1)k-1Nk,

trong đó Nm (1  m  k) là tổng phần tử của tất cả các giao m tập lấy từ k tập đã
cho, nghĩa là

Nm =  | Ai1  Ai2  ...  Aim |


1i1 i2 ...im  k

Bây giờ ta đồng nhất tập Am (1  m  k) với tính chất Am cho trên tập vũ
trụ hữu hạn U nào đó và đếm xem có bao nhiêu phần tử của U sao cho không thỏa
mãn bất kỳ một tính chất Am nào. Gọi N là số cần đếm, N là số phần tử của U. Ta
có:

N = N  | A1  A2  ...  Ak| = N  N1 + N2  ... + (1) Nk,


k

trong đó Nm là tổng các phần tử của U thỏa mãn m tính chất lấy từ k tính chất đã
cho. Công thức này được gọi là nguyên lý bù trừ. Nó cho phép tính N qua các
Nm trong trường hợp các số này dễ tính toán hơn.

Ví dụ 1: 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 đúng địa chỉ.

Giải :Mỗi phong bì có n cách bỏ thư vào, nên có tất cả n! cách bỏ thư. Vấn
đề còn lại là đếm số cách bỏ thư sao cho không lá thư nào đúng địa chỉ. Gọi U là
tập hợp các cách bỏ thư và Am là tính chất lá thư thứ m bỏ đúng địa chỉ. Khi đó
theo công thức về nguyên lý bù trừ ta có:

N = n!  N1 + N2  ... + (1) Nn,


n

9
trong đó Nm (1  m  n) là số tất cả các cách bỏ thư sao cho có m lá thư đúng địa
chỉ. Nhận xét rằng, Nm là tổng theo mọi cách lấy m lá thư từ n lá, với mỗi cách lấy
m lá thư, có (n-m)! cách bỏ để m lá thư này đúng địa chỉ, ta nhận được:
n! 1 1 1
Nm = C nm (n - m)! = và N = n!(1  +  ... + (1)n ),
k! 1! 2! n!

n!
trong đó C nm = là tổ hợp chập m của tập n phần tử (số cách chọn m
m!( n  m)!
1 1
đối tượng trong n đối tượng được cho). Từ đó xác suất cần tìm là: 1  + 
1! 2!
1 - 1
... + (1)n . Một điều lý thú là xác suất này dần đến e 1 (nghĩa là còn > ) khi n
n! 3
khá lớn.

Số N trong bài toán này được gọi là số mất thứ tự và được ký hiệu là Dn.
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 so với n:

n 2 3 4 5 6 7 8 9 10 11

Dn 1 2 9 44 265 1854 14833 133496 1334961 14684570

1.4. Nguyên lý DIRICHLET.


1.4.1. Mở đầu:
Giả sử có một đàn chim bồ câu bay vào chuồng. Nếu số chim nhiều hơn số
ngăn chuồng thì ít nhất trong một ngăn có nhiều hơn một con chim. Nguyên lý
này dĩ nhiên là có thể áp dụng cho các đối tượng không phải là chim bồ câu và
chuồng chim.
Mệnh đề (Nguyên lý): Nếu có k+1 (hoặc nhiều hơn) đồ vật được đặt vào
trong k hộp thì tồn tại một hộp có ít nhất hai đồ vật.
Chứng minh: Giả sử không có hộp nào trong k hộp chứa nhiều hơn một đồ
vật. Khi đó tổng số vật được chứa trong các hộp nhiều nhất là bằng k. Điều này
trái giả thiết là có ít nhất k + 1 vật.
Nguyên lý này thường được gọi là nguyên lý Dirichlet, mang tên nhà toán
học người Đức ở thế kỷ 19. Ông thường xuyên sử dụng nguyên lý này trong
công việc của mình.
Ví dụ 1:

10
1) Trong bất kỳ một nhóm 367 người thế nào cũng có ít nhất hai người có ngày
sinh nhật giống nhau bởi vì chỉ có tất cả 366 ngày sinh nhật khác nhau.

2) Trong kỳ thi học sinh giỏi, điểm bài thi được đánh giá bởi một số nguyên
trong khoảng từ 0 đến 100. Hỏi rằng ít nhất có bao nhiêu học sinh dự thi để cho
chắc chắn tìm được hai học sinh có kết quả thi như nhau?

Theo nguyên lý Dirichlet, số học sinh cần tìm là 102, vì ta có 101 kết quả
điểm thi khác nhau.
3) Trong số những người có mặt trên trái đất, phải tìm được hai người có hàm
răng giống nhau. Nếu xem mỗi hàm răng gồm 32 cái như là một xâu nhị phân
có chiều dài 32, trong đó răng còn ứng với bit 1 và răng mất ứng với bit 0, thì
có tất cả 232 = 4.294.967.296 hàm răng khác nhau. Trong khi đó số người trên
hành tinh này là vượt quá 5 tỉ, nên theo nguyên lý Dirichlet ta có điều cần tìm.
1.4.2. Nguyên lý Dirichlet tổng quát:
Mệnh đề: Nếu có N đồ vật được đặt vào trong k hộp thì sẽ tồn tại một hộp
chứa ít nhất ]N/k[ đồ vật.
(Ở đây, ]x[ là giá trị của hàm trần tại số thực x, đó là số nguyên nhỏ nhất có
giá trị lớn hơn hoặc bằng x. Khái niệm này đối ngẫu với [x] – giá trị của hàm
sàn hay hàm phần nguyên tại x – là số nguyên lớn nhất có giá trị nhỏ hơn hoặc
bằng x.)
Chứng minh: Giả sử mọi hộp đều chứa ít hơn ]N/k[ vật. Khi đó tổng số đồ vật là
N N
 k (] [  1) < k = N.
k k

Điều này mâu thuẩn với giả thiết là có N đồ vật cần xếp.
Ví dụ 3:

1) Trong 100 người, có ít nhất 9 người sinh cùng một tháng.


Xếp những người sinh cùng tháng vào một nhóm. Có 12 tháng tất cả. Vậy
theo nguyên lý Dirichlet, tồn tại một nhóm có ít nhất ]100/12[= 9 người.

2) Có năm loại học bổng khác nhau. Hỏi rằng phải có ít nhất bao nhiêu sinh viên
để chắc chắn rằng có ít ra là 6 người cùng nhận học bổng như nhau.

Gọi N là số sinh viên, khi đó ]N/5[ = 6 khi và chỉ khi 5 < N/5  6 hay 25
< N  30. Vậy số N cần tìm là 26.

11
3) Số mã vùng cần thiết nhỏ nhất phải là bao nhiêu để đảm bảo 25 triệu máy
điện thoại trong nước có số điện thoại khác nhau, mỗi số có 9 chữ số (giả sử số
điện thoại có dạng 0XX - 8XXXXX với X nhận các giá trị từ 0 đến 9).
Có 107 = 10.000.000 số điện thoại khác nhau có dạng 0XX - 8XXXXX. Vì
vậy theo nguyên lý Dirichlet tổng quát, trong số 25 triệu máy điện thoại ít nhất
có ]25.000.000/10.000.000[ = 3 có cùng một số. Để đảm bảo mỗi máy có một
số cần có ít nhất 3 mã vùng.
1.4.3. Một số ứng dụng của nguyên lý Dirichlet.
Trong nhiều ứng dụng thú vị của nguyên lý Dirichlet, khái niệm đồ vật và
hộp cần phải được lựa chọn một cách khôn khéo. Trong phần nay có vài thí dụ
như vậy.

Ví dụ 4:

1) Trong một phòng họp có n người, bao giờ cũng tìm được 2 người có số người
quen trong số những người dự họp là như nhau.

Số người quen của mỗi người trong phòng họp nhận các giá trị từ 0 đến n 
1. Rõ ràng trong phòng không thể đồng thời có người có số người quen là 0 (tức là
không quen ai) và có người có số người quen là n  1 (tức là quen tất cả). Vì vậy
theo số lượng người quen, ta chỉ có thể phân n người ra thành n 1 nhóm. Vậy
theo nguyên lý Dirichlet tồn tai một nhóm có ít nhất 2 người, tức là luôn tìm được
ít nhất 2 người có số người quen là như nhau.

2) Trong một tháng gồm 30 ngày, một đội bóng chuyền thi đấu mỗi ngày ít nhất
1 trận nhưng chơi không quá 45 trận. Chứng minh rằng tìm được một giai đoạn
gồm một số ngày liên tục nào đó trong tháng sao cho trong giai đoạn đó đội chơi
đúng 14 trận.

Gọi aj là số trận mà đội đã chơi từ ngày đầu tháng đến hết ngày j. Khi đó

1  a1 < a2 < ... < a30 < 45

15  a1+14 < a2+14 < ... < a30+14 < 59.

Sáu mươi số nguyên a1, a2, ..., a30, a1+ 14, a2 + 14, ..., a30+14 nằm giữa 1 và 59. Do
đó theo nguyên lý Dirichlet có ít nhất 2 trong 60 số này bằng nhau. Vì vậy tồn tại i
và j sao cho ai = aj + 14 (j < i). Điều này có nghĩa là từ ngày j + 1 đến hết ngày i
đội đã chơi đúng 14 trận.

12
3) Chứng tỏ rằng trong n + 1 số nguyên dương không vượt quá 2n, tồn tại ít nhất
một số chia hết cho số khác.
k
Ta viết mỗi số nguyên a1, a2,..., an+1 dưới dạng aj = 2 j qj trong đó kj là số
nguyên không âm còn qj là số dương lẻ nhỏ hơn 2n. Vì chỉ có n số nguyên dương
lẻ nhỏ hơn 2n nên theo nguyên lý Dirichlet tồn tại i và j sao cho qi = qj = q. Khi đó
k
ai= 2 ki q và aj = 2 j q. Vì vậy, nếu ki  kj thì aj chia hết cho ai còn trong trường
hợp ngược lại ta có ai chia hết cho aj.

Thí dụ cuối cùng trình bày cách áp dụng nguyên lý Dirichlet vào lý thuyết
tổ hợp mà vẫn quen gọi là lý thuyết Ramsey, tên của nhà toán học người Anh.
Nói chung, lý thuyết Ramsey giải quyết những bài toán phân chia các tập con của
một tập các phần tử.

Ví dụ 5. Giả sử trong một nhóm 6 người mỗi cặp hai hoặc là bạn hoặc là thù.
Chứng tỏ rằng trong nhóm có ba người là bạn lẫn nhau hoặc có ba người là kẻ thù
lẫn nhau.

Giải: Gọi A là một trong 6 người. Trong số 5 người của nhóm hoặc là có ít
nhất ba người là bạn của A hoặc có ít nhất ba người là kẻ thù của A, điều này suy
ra từ nguyên lý Dirichlet tổng quát, vì ]5/2[ = 3. Trong trường hợp đầu ta gọi B,
C, D là bạn của A. nếu trong ba người này có hai người là bạn thì họ cùng với A
lập thành một bộ ba người bạn lẫn nhau, ngược lại, tức là nếu trong ba người B, C,
D không có ai là bạn ai cả thì chứng tỏ họ là bộ ba người thù lẫn nhau. Tương tự
có thể chứng minh trong trường hợp có ít nhất ba người là kẻ thù của A.

2. Chỉnh hợp

2.1 Chỉnh hợp không lặp

2.1.1 Khái niệm

Cho tập hợp A gồm n phần tử, giả sử k là một số tự nhiên thỏa mãn 1 ≤ k ≤ n. Mỗi
cách sắp xếp k phần tử của tập A thành một dãy hở gọi là một chỉnh hợp không
lặp chập k của n phần tử.

2.1.2 Công thức tính

Kí hiệu Ank là số chỉnh hợp chập k của n phần tử ta có:

n!
Ank =n(n-1)(n-2)…(n-k+1) =
(n  k )!

13
Chứng minh:

Để xây dựng một chỉnh hợp không lặp, ta xây dựng từ thành phần đầu tiên.
Thành phần này có n khả năng chọn. Mỗi thành phần tiếp theo những khả năng
chọn giảm đi 1 (vì không được lấy lặp lại). Tới thành phần thứ k có n-k + 1 khả
năng chọn. Theo nguyên lý nhân ta có số chỉnh hợp
lặp k của tập hợp n phần tử ký hiệu là P(n, k) được tính theo công thức:
n!
Ank =n(n-1)(n-2)…(n-k+1) =
(n  k )!
2.1.3 Các ví dụ

Ví dụ 1. Tìm số hàm đơn ánh có thể xây dựng được từ tập k phần tử sang
tập n phần tử.
Giải: Số hàm đơn ánh từ tập k phần tử sang tập n phần tử chính là Ank
Ví dụ 2. Giả sử có tám vận động viên chạy thi. Người về nhất sẽ được
nhận huy chương vàng, người về nhì nhận huy chương bạc, người về ba nhận
huy chương đồng. Hỏi có bao nhiêu cách trao huy chương nếu tất cả các kết cục
đều có thể xảy ra.
Giải: Số cách trao huy chương chính là số chỉnh hợp chập 3 của tập hợp 8
phần tử. Vì thế
3
có A8 = 8.7.6 = 336 cách trao huy chương.

Ví dụ 3. Có bao nhiêu cách chọn 4 cầu thủ khác nhau trong đội bóng
gồm 10 cầu thủ để
tham gia các trận đấu đơn.
Giải: Có A104 = 10.9.8.7 = 5040 cách chọn.
2.2 Chỉnh hợp có lặp

2.2.1 Khái niệm


Chỉnh hợp có lặp chập k của n phần tử là một cách sắp xếp có thứ tự k phần tử
của n phần tử, mỗi phần tử có thể lấy lặp lại.

2.2.2 Công thức tính


k k
Kí hiệu: A n là số chỉnh hợp lặp chập k của n phần tử ta có: A n =nk

Chứng minh:

Phần tử đẩu tiên của chỉnh hợp lặp có thể chọn có n cách, vì tập có n phần tử.
Phần tử thứ hai của chỉnh hợp lặp được chọn từ n của tập vì phần tử có thể

14
được lấy lặp lại, tức là có n cách chọn phần tử này.
Tương tự như thế ta có n cách chọn phần tử thứ 3…, có n cách chọn phần tử
thứ k.
k
=>Theo quy tắc nhân: A n =nk

2.2.3 Các ví dụ:

Ví dụ 1. Tính số hàm từ tập có k phần tử vào tập có n phần tử.


Giải: Biểu diễn mỗi hàm bằng một bộ k thành phần, trong đó thành phần
thứ i là ảnh của phần tử thứ i (1<=i<=k). Mỗi thành phần được lấy ra từ một
trong n giá trị. Từ đó suy ra số hàm là số bộ k thành phần lấy từ n thành phần
bằng nk.
Ví dụ 2. Từ bảng chữ cái tiếng Anh có thể tạo ra được bao nhiêu xâu có độ
dài n.
Giải: Bảng chữ cái tiếng Anh gồm 26 kí tự [‘A’..’Z’], số các xâu có độ dài
n được chọn từ
26 chữ cái chính là chỉnh hợp lặp n của 26 phần tử và bằng 26n.
Ví dụ 3. Tính xác xuất lấy ra liên tiếp được 3 quả bóng đỏ ra khỏi bình kín
chứa 5 quả đỏ, 7 quả xanh nếu sau mỗi lần lấy một quả bóng ra lại bỏ nó trở lại
bình.
Giải: Số kết cục có lợi để ta lấy ra liên tiếp 3 quả bóng đỏ là 53 vì có 5 quả
đỏ ta phải lấy 3 quả (chú ý vì có hoàn lại). Toàn bộ kết cục có thể để lấy ra ba quả
bóng bất kỳ trong 12 quả bóng là 123. Như vậy, xác suất để có thể lấy ra 3 quả
bóng đỏ liên tiếp là 53/123.

3. Hoán vị
3.1 Hoán vị ( Không lặp)
3.1.1 hái niệm

Cho tập hợp A gồm n phần tử. Mỗi cách sắp xếp n phần tử này thành một dãy
(không kín gồm n phần tử đó) gọi là một hoán vị của tập hợp A.

3.1.2 Công thức tính

Kí hiệu Pn là số các hoán vị của n phần tử ta có: Pn = n!

Chứng minh:

Ta chứng minh công thức này dựa trên nguyên lý nhân. Xét công việc xây
dựng một hoán vị của n vật ban đầu. Công việc này được chia thành các bước

15
sau:
- Bước 1: Chọn vật đứng đầu: có n cách chọn (n vật đều có thể đứng
đầu)
- Bước 2: Chọn vật đứng thứ hai: có n-1 cách chọn (do đã chọn vật
đứng đầu
nên bây giờ ta chỉ còn n-1 vật )
- …
- Bước n: Chọn vật còn lại cuối cùng: chỉ có 1 cách duy nhất.
Như vậy theo nguyên lý nhân, số cách xây dựng hoán vị, cũng chính là số các
hoán
vị của n vật ban đầu là n.(n-1)…2.1 = n!.

3.1.3 Các ví dụ

Ví dụ 1. Có 6 người xếp thành hàng để chụp ảnh. Hỏi có thể bố trí chụp
được bao nhiêu kiểu khác nhau.
Giải: Mỗi kiểu ảnh là một hoán vị của 6 người. Do đó có 6! = 720 kiểu
ảnh khác nhau có thể chụp.
Ví dụ 2. Cần bố trí thực hiện n chương trình trên một máy tính. Hỏi có bao
nhiêu cách bố trí khác nhau.
Giải: Số chương trình được đánh số từ 1, 2,.., n. Như vậy, số chương
trình cần thực hiện trên một máy tính là số hoán vị của 1, 2,.., n.
Ví dụ 3. Một thương nhân đi bán hàng tại tám thành phố. Chị ta có thể bắt
đầu hành trình của mình tại một thành phố nào đó nhưng phải qua 7 thành phố
kia theo bất kỳ thứ tự nào mà chị ta muốn. Hỏi có bao nhiêu lộ trình khác nhau
mà chị ta có thể đi.
Giải: Vì thành phố xuất phát đã được xác định. Do vậy thương nhân có thể
chọn tuỳ ý 7 thành phố còn lại để hành trình. Như vậy, tất cả số hành trình của
thương nhân có thể đi qua là 7! = 5040 cách.

3.2 Hoán vị có lặp

3.2.1 Khái niệm


Cho s phần tử khác nhau a1, a2,…, as Một chỉnh hợp có lặp chập m của s phần tử
đã cho, trong đó có k1 phần tử a1, k2 phần tử a2, …, ks phần tử as được gọi là một
hoán vị lặp cấp m (m= k1+k2+…+ ka) và có kiểu (k1, k2,…,ks ) của s phần tử.
3.2.2 Công thức tính
m!
Cm(k1, k2,…,ks )=
k 1!k 2 !.. k s !

16
Chứng minh:
Đầu tiên, nếu xem như n phần tử là khác nhau, ta có m! hoán vị. Tuy
nhiên do có k1 phần tử a1 giống nhau, nên ứng với một hoán vị ban đầu, nếu
ta hoán vị k1 phần tử này (có k1! hoán vị như vậy) ta vẫn được hoán vị đó.
Chính vì vậy thực chất k1! hoán v ị k i ể u n à y c h ỉ l à m ộ t h o á n v ị d o đ ó
m!
số hoán vị thực sự khác nhau nếu có k1 phần tử a1 là tiếp theo
k1 !
ta lại có k2 phần tử a2 khác nhau lên số hoán vị thực sự khác nhau bây giờ là
m!
, .. Cứ tiếp tục như vậy cho đến phần tử as ta sẽ có công thức cần chứng
k 1! k 2 !
minh.
3.2.3 Các ví dụ
Ví dụ: Bao nhiêu cách chọn 22 cầu thủ để tham dự đội tuyển bóng đá Việt Nam từ
danh sách 30 cầu thủ đề cử ? Bao nhiêu cách chọn ra một danh sách có thứ tự 11
cầu thủ để thi đấu ?

Lời giải: +Có P(22, 11) cách chọn danh sách có thứ tự 11 cầu thủ từ 22 cầu thủ
trong đội.
+Có C(30, 22) cách chọn ra 22 cầu thủ từ danh sách đề cử 30 cầu thủ.
Ví dụ: Từ bảng chữ cái tiếng Anh có thể tạo ra bao nhiêu chuỗi có độ dài n ?

Lời giải: 26n (dùng quy tắc nhân)

Nhận xét: Ở đây có sự tương tự như chỉnh hợp (có thứ tự), nhưng cho phép sự lặp
lại của các chữ cái.

Số các chỉnh hợp lặp chập r từ tập n phần tử bằng nr

Ví dụ: Có bao nhiêu chuỗi khác nhau bằng cách sắp xếp lại các chữ

cái SUCCESS ?

Lời giải: Không thể là hoán vị của 7 chữ cái v. có sự lặp lại.

ó 3 chữ S, 2 chữ C, 1 chữ U, 1 chữ E

ó Có C(7, 3) cách chọn chỗ cho 3 chữ cái S. Có C(4, 2) cách chọn

chỗ cho 2 chữ cái C. Có C(2, 1) cách chọn chỗ cho 1 chữ U. Có

C(1, 1) cách chọn chỗ cho 1 chữ E.

17
Theo quy tắc nhân ta có số chuỗi là:

C(7, 3)C(4, 2)C(2, 1)C(1, 1) = 420

3.2.4 Những hoán vị đặc biệt

 Một hoán vị "đổi chỗ" phần tử thứ nhất với phần tử thứ nhất, phần tử thứ
hai với phần tử thứ hai,..., nghĩa là trên thực tế không đổi chỗ các phần tử,
được gọi là phép hoán vị đồng nhất.
 Nếu có một hoán vị P, chúng ta có thể mô tả một hoán vị P−1, làm mất tác
dụng của việc áp dụng phép P. Nghĩa là, áp dụng phép P rồi đến P−1 cho kết
quả giống như áp dụng phép hoán vị đồng nhất. Chúng ta luôn có một hoán
vị như vậy vì một hoán vị là một phép song ánh. Hoán vị như vậy được gọi
là hoán vị nghịch đảo.
 Chúng ta có thể định nghĩa tích của hai hoán vị. Nếu chúng ta có hai hoán
vị, P và Q, kết qủa của việc áp dụng P rồi đến Q sẽ giống như việc áp dụng
một hoán vị R nào đó. Lưu ý rằng R có thể chính là P hoặc Q. Tích của P
và Q được định nghĩa bằng hoán vị R. Chi tiết hơn, có thể đọc nhóm đối
xứng và nhóm hoán vị.
 Một hoán vị chẵn là một hoán vị có thể biểu diễn dưới dạng tích của một số
chẵn các phép chuyển vị, như vậy hoán vị đồng nhất là một hoán vị chẵn
bởi vì nó bằng (1 2)(1 2). Một hoán vị lẻ là một hoán vị có thể biểu diễn
dưới dạng tích của một số lẻ các phép chuyển vị. Có thể chứng tỏ rằng mỗi
hoán vị hoặc là chẵn, hoặc là lẻ và không thể có cả hai tính chất này.
 Chúng ta cũng có thể biểu diễn hoán vị dưới dạng ma trận - ma trận kết qủa
được gọi là ma trận hoán vị.

3.2.5 Hoán vị của tập hợp có các phần tử giống nhau.


Trong bài toán đếm, một số phần tử có thể giống nhau. Khi đó cần phải cẩn
thận, tránh đếm chúng hơn một lần. Ta xét thí dụ sau.
Ví dụ :Có thể nhận được bao nhiêu xâu khác nhau bằng cách sắp xếp lại các chữ
cái của từ SUCCESS?

Vì một số chữ cái của từ SUCCESS là như nhau nên câu trả lời không phải
là số hoán vị của 7 chữ cái được. Từ này chứa 3 chữ S, 2 chữ C, 1 chữ U và 1 chữ
E. Để xác định số xâu khác nhau có thể tạo ra được ta nhận thấy có C(7,3) cách
chọn 3 chỗ cho 3 chữ S, còn lại 4 chỗ trống. Có C(4,2) cách chọn 2 chỗ cho 2 chữ

18
C, còn lại 2 chỗ trống. Có thể đặt chữ U bằng C(2,1) cách và C(1,1) cách đặt chữ
E vào xâu. Theo nguyên lý nhân, số các xâu khác nhau có thể tạo được là:
7!4!2!1! 7!
C 73 . C 42 . C 21 . C11 = = = 420.
3!.4!.2!.2!.1!.1!.1!.0! 3!.2 !.1!.1!

Mệnh đề : Số hoán vị của n phần tử trong đó có n1 phần tử như nhau thuộc loại 1,
n2 phần tử như nhau thuộc loại 2, ..., và nk phần tử như nhau thuộc loại k, bằng

n!
.
n1!.n 2 !....n k !

Chứng minh. Để xác định số hoán vị trước tiên chúng ta nhận thấy có C nn1 cách
n
giữ n1 chỗ cho n1 phần tử loại 1, còn lại n - n1 chỗ trống. Sau đó có C n2 n cách đặt
1

n2 phần tử loại 2 vào hoán vị, còn lại n - n1 - n2 chỗ trống. Tiếp tục đặt các phần tử
loại 3, loại 4,..., loại k - 1vào chỗ trống trong hoán vị. Cuối cùng có
n
C nk n ...n cách đặt nk phần tử loại k vào hoán vị. Theo quy tắc nhân tất cả các
1 k 1

hoán vị có thể là:

n n n!
C nn1 . C n2 n .... C n k n ...n = .
1 1 k 1 n1!.n 2 !....n k !

4. Tổ hợp
4.1 Tổ hợp không lặp

4.1.1 Khái niệm

Cho tập A gồm n phần tử, k là một số nguyên thỏa mãn 1 ≤ k ≤ n. Mỗi tập hợp
còn gồm k phần tử của tập A được gọi là một tổ hợp chập k của tập A gồm n phần
tử. ( Ta cũng có thể định nghĩa theo cách khác: Tổ hợp chập k của n phần tử là
một cách chọn không phân biệt thứ tự k phần tử lấy từ tập n phần tử đã cho, mỗi
phần tử không được lấy lặp lại).

Ví dụ: Từ tập A={1,2,3} ta có các tổ hợp chập 2 của A là (1,2), (1,3), (2,3)

4.1.2 Công thức tính

Kí hiệu C nk là số tổ hợp chập k của n phần tử, ta có

19
n!
C nk =
k!( n  k )!

Chứng minh:

Ta dễ thấy rằng sự khác nhau giữa tổ hợp và chỉnh hợp chỉ là vấn đề có xét đến
hay không xét đến thứ tự của các phần tử được chọn. Đối với tổ hợp, ta không xét
đến yếu tố thứ tự điều đó có nghĩa nếu hoán vị k phần tử được chọn một cách tùy
ý thì tổ hợp của chúng ban đầu cũng không thay đổi. Do đó ta có công thức:

n! n!
C nk = => C nk =
k! Ank k!( n  k )!

4.1.3 Các ví dụ:

Ví dụ 1. Trong 1 lớp học có 20 HS nam và 15 HS nữ. Thầy giáo cần 4HS nam
và 3 HS nữ đi tham gia chiến dịch "Mùa hè xanh" của Đoàn. Hỏi có bao nhiêu
cách?

Giải: Ta có cách chọn 4 HS nam trong số 20 HS


nam và có cách chọn 3 HS nữ trong số 15 HS nữ. Theo quy
tắc nhân, số cách chọn cần tìm là: 4845.455=2204475 cách chọn

Ví dụ 2. Lớp có 70 sinh viên, trong đó có 40 nam và 30 nữ, hỏi có bao nhiêu


cách chọn ngẫu nhiên 10 sinh viên nam và 10 sinh viên nữ đi dự đại hội sinh viên
của trường?

Giải: Số cách chọn 10 sinh viên nam trong số 40 sinh viên nam của lớp là một
10
tổ hợp chập 10 của 40 => có C 40 cách chọn 10 sinh viên nam trong số 40 sinh
viên nam của lớp

Số cách chọn 10 sinh viên nữ trong số 30 sinh viên nữ của lớp là một tổ hợp
chập 10 của 30 => có C 3010 cách chọn 10 sinh viên nam trong số 30 sinh viên nữ
của lớp
10 10
C 40
Vậy theo quy tắc nhân, có × C 30 cách chọn 20 sinh viên theo yêu cầu.

4.2 Tổ hợp có lặp

4.2.1 Khái niệm

20
Cho tổ hợp A gồm n phần tử khác nhau, A={ a1,a2,…,an}, m là một số tự nhiên
bất kì. Một tổ hợp có lặp chập m của n phần tử đã cho là một tập hợp chứa m phần
tử, trong đó mỗi phần thử là một trong n phần tử đã cho.

Ví dụ:

Cho A={2,3} các tổ hợp lặp chập 3 của A là (2,2,3), (2,3,3), (2,2,2), (3,3,3).

4.2.2 Công thức tính


m m m
Kí hiệu C n là số tổ hợp có lặp chập m của n phần tử ta có: C n = C m  n 1

Chứng minh :

Mỗi tổ hợp lặp chập k của một tập hợp là một cách chọn không có thứ tự k phần
tử có thể lặp lại của phần tử đã cho.Như vậy một tổ hợp lặp kiểu này là một dãy
không kể thứ tự gồm k thành phần lấy từ tập n phần tử.Do đó có thể k>n

Mỗi tổ hợp lặp chập k từ tập n phần tử có thể biểu diễn bằng một dãy n-1 thanh
đứng và k ngôi sao.Ta dùng n-1 thanh đứng để phân cách các ngăn.Ngăn thứ i
chứa thêm một ngôi sao mỗi lần khi phần tử thứ i của tập xuất hiện trong tập
hợp.Chẳng hạn,tổ hợp lặp chập 6 của 4 phần tử được biểu thị bởi:

**| *| |***

Mô tả tổ hợp chứa đúng hai phần tử thứ nhất,một phần tử thứ hai,không có phần
tử thứ ba và 3 phần tử thứ tư của tập hợp

Mỗi dãy n-1 thanh và k ngôi sao ứng với một xâu nhị phân độ dài n+k-1 với k
số 1.Do đó số các dãy n-1 thanh đứng và k ngôi sao chính là số tổ hợp chập k từ
tập n+k-1 phần tử.

4.2.3 Các ví dụ:

Ví dụ 1.Có bao nhiêu cách chọn 5 tờ giấy bạc từ một két đựng tiền gồm những tờ
1000đ, 2000đ, 5000đ, 10.000đ, 20.000đ, 50.000đ, 100.000đ.Giả sử thứ tự mà các
tờ tiền được chọn là không quan trọng,các tợ tiền cùng loại là không phân biệt và
mỗi loại có ít nhất 5 tờ.

Giải: Vì ta không kể tới thứ tự chọn tờ tiền và vì ta chọn đúng 5 lần,mỗi lần lấy
một từ 1 trong 7 loại tiền nên mỗi cách chọn 5 tờ giấy bạc này chính là một tổ hợp
lặp chập 5 từ 7 phần tử.Do đó số cần tìm là C57+5-1 =462.

V í d ụ 2 . “Tìm số nghiệm nguyên không âm của phương trình sau:

21
x1 + x2 + x3 = 10”.

Giải: Đối với bài toán này, nếu đặt x1 là số bánh được cho vào hộp 1, x2 là số
bánh được cho vào hộp 2 và x3 là số bánh được cho vào hộp 3 thì bài toán trên
trở thành “có bao nhiêu cách cho 10 cái bánh giống nhau vào trong 3 cái hộp
khác nhau” và kết quả cần tìm là

Ví dụ 3.
“Một người Mẹ có 4 đứa con. Một ngày nọ, người Mẹ có 20 cái kẹo và muốn
chia cho 4 đứa con sao cho mỗi đứa được ít nhất 2 cái kẹo. Hỏi có bao nhiêu cách
chia như vậy?”.
Rõ ràng là cách đặt vấn đề ở đây cũng giống như việc ta cho 20 cái bánh
giống nhau vào trong 4 cái hộp khác nhau sao cho mỗi cái hộp có ít nhất 2 cái
bánh. Rõ ràng là ta không thể áp dụng ngay công thức đã biết vì nếu như vậy thì
sẽ có rất nhiều trường hợp sẽ có hộp có ít hơn 2 bánh (thậm chí là có thể không
có cái bánh nào). Để giải quyết trường hợp này, ta sẽ cho vào mỗi hộp hai cái
bánh trước, sau đó mới chia 12 cái bánh còn lại một cách tự do vào 4 cái hộp,
như vậy số cách chia thỏa mãn yêu cầu ban đầu là: cách.

22
Chương trình cài đặt bài toán liệt kê các hoán vị khác nhau
của thuật toán trong chuỗi S cho trước:

program hoanvilap;
uses crt;
var
s:string;
sign:array[1..255] of Boolean;{Dung de danh dau}
b:array[1..255] of char;{Dung de luu tam cac hoan vi cho viet ra man hinh}
n:byte;{ Luu chieu dai cua xau}
counter: longint;{ Dung de dem so hoan vi}

Function ok(k:byte):boolean;{ Kiem tra xem co phan tu nao giong phan tu dang xet
va co vi tri xuat dung truoc phan tu dang xet trong xau hay khong}
var
j:byte;
begin
ok:=true;
for j:=1 to k-1 do
if (s[k]=s[j]) and (not sign[j]) then
begin
ok:=false;
break;
end;
end;

Procedure confirm;{Xac nhan hoan vi moi va viet ra man hinh}


var
i:byte;
begin
inc(counter);
write(' ');
for i:=1 to n do write(b[i]);

23
writeln;
end;

procedure try(i:byte);
var
j:byte;
begin
for j:=1 to n do {Tap de cu}
if (not(sign[j])) and (ok(j)) {Hai dieu kien de chap nhan s[j]}
then
begin
sign[j]:=true;{Danh dau da su dung}
b[i]:=s[j];
if i=n then confirm else try(i+1);
sign[j]:=false;{Tra lai trang thai chua duoc su dung}
end;
end;

procedure start;{Bat dau chuong trinh}


begin
writeln;
writeln;
writeln(' CHUONG TRINH LIET KE CAC HOAN VI CUA CAC KI TU TRONG
CHUOI');
writeln;
writeln(' Mon hoc: Toan Roi Rac');
writeln;
writeln(' Nhom II');
writeln;
writeln;
write(' Type a string:'); readln(s); {Nhap vao xau ki tu}
writeln;
writeln(' List:');
writeln;
writeln(' ***********');
n:=length(s);
counter:=0;
fillchar(sign,sizeof(sign),0);
fillchar(b,sizeof(b),0);
writeln;
end;

(*============================= Main ========================*)

Begin
clrscr;
start;
try(1);

24
readln;
End.

Một số nội dung mở rộng:

I. Các mở rộng về giai thừa:

Khái niệm “giai thừa”:

Trong toán học, giai thừa là một toán tử một ngôi trên tập hợp các số
tự nhiên. Cho n là một số tự nhiên dương, "n giai thừa", kí hiệu n! là tích
của n số tự nhiên dương đầu tiên:

n! = n.(n-1).(n-2)....4.3.2.1

Đặc biệt, với n = 0, người ta quy ước n! = 1.

Ký hiệu n! được dùng lần đầu bởi Christian Kramp vào năm 1808.

Định nghĩa đệ quy

Ta có thể định nghĩa đệ quy (quy nạp) n! như sau:

1. 0! = 1
2. (n + 1)! =n! × (n + 1) với n> 0

Các khái niệm tương tự

a.Giai thừa nguyên tố (primorial)

Giai thừa nguyên tố của số tự nhiên n≥2, ký hiệu n# là tích của tất
các các số nguyên tố không vượt quá n.

25
Ví dụ:

2#= 2

3#=2.3=6

4#=2.3=6

5#=2.3.5=30

6#=2.3.5=30

7#=2.3.5.7=210

b. Giai thừa kép

Có thể coi n! là tích n phần tử đầu của cấp số cộng với phần tử đầu
bằng 1 và công sai bằng 1. Mở rộng với công sai bằng 2 ta có:

Giai thừa kép là tích n phần tử đầu của cấp số cộng với phần tử đầu
1 và công sai là 2.

Ví dụ:

8!! = 2 · 4 · 6 · 8 = 384

9!! = 1 · 3 · 5 · 7 · 9 = 945.

Dãy các giai thừa kép đầu tiên là:

26
n 012345 6 7 8 9 10

n!! 1 1 2 3 8 15 48 105 384 945 3840

Định nghĩa trên có thể mở rộng cho các số nguyên âm như sau:

Các giai thừa kép nguyên âm lẻ đầu tiên với n= -1, -3, -5, -7,...là:

1, -1, 1/3, -1/15 ...

Một vài đẳng thức với giai thừa kép:

- n!=n!!(n-1)!!
- (2n)!!=2nn!

- (2n+1)!!=

Cũng nên phân biệt n!! với (n!)!.

c. Giai thừa bội

Ta có thể tiếp tục mở rộng với các giai thừa bội ba (n!!!),bội bốn (n!!!!)
....

Tổng quát, giai thừa bội k ký hiệu là n!(k), được định nghĩa đệ quy
như sau:

27
d. Siêu giai thừa (superfactorial).

Siêu giai thừa là tích của n giai thừa đầu tiên.

sf(n)= 1!2!3!....(n-2)!(n-1)!n!

( Neil Sloane và Simon Plouffe đã định nghĩa siêu giai thừa (năm 1995))

Chẳng hạn, siêu giai thừa của 4 là

Tổng quát

n-k+1
Sf(n)= != = 1n.2n-2.3n-2...(n-1)2.n1

Các siêu giai thừa đầu tiên bắt đầu từ (n = 0) là:

1, 1, 2, 12, 288, 34560, 24883200, ... Bản mẫu:OEIS

II. Hệ số nhị thức

Định lý 1: Cho n,k là các số nguyên dương, với n ≥k, khi đó:

Ckn+1`= Ck-1n + Ckn (Hằng đẳng thức Pascal)

Chứng minh: Giả sử T là một tập có n+1 phần tử, gọi a là một phần tử
bất kỳ của T; S=T\{a}. Khi đó Ckn+1 là số các tập con có k phần tử của tập
T, hoặc là chứa phần tử a cùng với k-1 phần tử của S, hoặc là chứa k phần tử
của S mà không chứa a. Vì có Ck-1n tập con chứa k-1 phần tử của S và Ckn

28
tập con chứa k phần tử của tập S. Do vậy, Ckn+1= Ck-1+ Ckn. Khai triển ta có
hằng đẳng thức Pascal hay tam giác Pascal:

C0 0

C0 1 C1 1

C0 2 C1 2 C2 2

C0 3 C1 3 C2 3 C3 3

C0 4 C1 4 C2 4 C3 4 C4 4

C0 5 C1 5 C2 5 C3 5 C4 5 C5 5

1 1

1 2 1

1 3 3 1

1 4 6 4 1

29
1 5 10 10 5 1

Hằng đẳng thức Pascal chỉ ra rằng khiu cộng hai hệ số nhị thức liền kề
trong tam giác sẽ nhận được hệ số nhị thức của hàng tiếp theo ở giữa.

k n
Định lý 2: Cho n số nguyên dương, khi đó n=2

Chứng minh:

Một tập hợp n phần tử có tất cả 2n tập con khác nhau (1).

Mặt khác ta thấy, mỗi tập con có hoặc không có phần tử nào hoặc 1
phần tử, hoặc 2 phần tử,..., hoặc n phần tử.

Số tập con có 0 phần tử là

Số tập con có 2 phần tử là

..................

Số tập con có n phần tử là

k
Do đó ta có tất cả n tập con của tập n phần tử. Kết hợp với (1) ta

k n
n=2

Định lý 3: Cho x,y là hai biến và n là một số nguyên dương khi đó:

(x+y)n= k n-k k
nx y (n≥2)

30
Chứng minh: Ta chứng minh hệ thức này bằng suy luận tổ hợp. Các số
hạng trong khai triển của (x+y)n sẽ có dạng xn-kyk với k=0,1,2...n. để nhận
được số hạng dạng xn-kyk ta chọn x từ n-k tổng (x+y) và có Cn-kn cách chọn
như vậy, khi đó y được chọn từ k tổng còn lại. Do đó hệ số của xn-kyk là Cn-
k
n= Ckn.

Hệ quả:

k
Khi x=y=1 ta có n= 2n

k k
Khi x=1, y=-1, ta có n(-1) = 0.

Ví dụ 1: tìm khai triển của biểu thức (x+y)4

(x+y)4= C04x4+ C14x3y+ C24x2y2+ C34xy3+ C44y4

(x+y)4= x4+ 4x3y+ 6x2y2+ 4xy3+ y4

Ví dụ 2: Tính hệ số của x12y13 trong khai triển của (x+y)25

C1325= = 5200 00

31
Tài liệu tham khảo:
1. Giáo trình toán rời rạc-Bộ môn khoa học máy tính.

2. Toán rời rạc:Nguyễn Tô Thành.

3. Thuật toán rời rạc và ứng dụng trong tin học:Rozen.

4. Toán rời rạc – Nguyễn Ngọc Trung – ĐH Sư Phạm TP HCM

5. Toán rời rạc – Nguyễn Duy Phương – HV Bưu Chính Viễn Thông

6. Mạng Internet.

32
Lời kết thúc
Tuy được hoàn thiện trong thời gian ngắn nhưng báo đã trình bày chi tiết những nội
dung cơ bản và mở rộng về lí thuyết tổ hợp cũng như các vấn đề về tổ hợp và chỉnh
hợp suy rộng cùng với các ví dụ cụ thể cho mỗi nội dung cùng với đó là thuật toán
được viết bằng ngôn ngữ lập trình Pascal.
Thân ái cảm ơn sự theo dõi và góp ý của thầy cô và các bạn!

-----------------------------------------------------------------------------------------------------

Nhận xét của giáo viên phụ trách :


………………………………………………………………………
………………………………………………………………………
………………………………………………………………………
………………………………………………………………………
………………………………………………………………………
………………………………………………………………

33
34

You might also like