34
1 Khoa Công nghthông tin Bmôn Khoa hc máy tính -------------o0o------------ BÁO CÁO THO LUN Môn hc :Toán ri rc Chủ đề: Chnh hp và thp suy rng ---- Nhóm 2 ---- Các sinh viên: 1. Nguyn ThThanh 2. Dương Bách Tiến 3. Nguyễn Đức Trng 4. Nguyn Thị Phượng 5. Nguyn ThQuyến 6. Tạ Văn Trung 7. Nguyễn Xuân Trường

Hoán vị lặp tổ hợp

Embed Size (px)

Citation preview

Page 1: Hoán vị lặp tổ hợp

1

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ị Thanh2. Dương Bách Tiến3. Nguyễn Đức Trọng4. Nguyễn Thị Phượng5. Nguyễn Thị Quyến6. Tạ Văn Trung7. Nguyễn Xuân Trường

Page 2: Hoán vị lặp tổ hợp

2

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êucầ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ê,đếmcá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ơnnữ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ố haytrong đá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ợpvà 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ệtkê 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ònrấ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!

Page 3: Hoán vị lặp tổ hợp

3

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ị Thanh9. Dương Bách Tiến10. Nguyễn Đức Trọng11. Nguyễn Thị Phượng12. Nguyễn Thị Quyến13. Tạ Văn Trung14. Nguyễn Xuân Trường

Page 4: Hoán vị lặp tổ hợp

4

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

Page 5: Hoán vị lặp tổ hợp

5

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 + … + tn.

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ử đithi đấ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.

Page 6: Hoán vị lặp tổ hợp

6

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+1for i2:= 1 to n2k:=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

Page 7: Hoán vị lặp tổ hợp

7

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 +..+nmlầ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áchnhư 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ánnhã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 để ghikí tự đầu tiên, tiếp theo sau là một số nguyên dương nhỏ hơn 100 do vậy có 100cá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 tanhậ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 = 128xâ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

Page 8: Hoán vị lặp tổ hợp

8

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ệnthoạ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ómmã chi nhánh gồm 3 chữ số và nhóm mã máy gồm 4 chữ số. Vì những nguyênnhâ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àiN(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ắccộng để tính số cách thực hiện nhiệm vụ gồm cả hai việc. Để tính đúng số cáchthự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ố

Page 9: Hoán vị lặp tổ hợp

9

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ônngữ 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 = |...|...1 21

21 m

m

ikiii

ii AAA

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ỏamã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. Tacó:

N = N | A1 A2 ... Ak| = N N1 + N2 ... + (1)kNk,

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ácNm 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)nNn,

Page 10: Hoán vị lặp tổ hợp

10

trong đó Nm (1 m n) là số tất cả các cách bỏ thư sao cho có m lá thư đúng địachỉ. 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ấym lá thư, có (n-m)! cách bỏ để m lá thư này đúng địa chỉ, ta nhận được:

Nm = mnC (n - m)! =

n

k

!

!và N = n!(1

1

1!+

1

2! ... + (1)n 1

n!),

trong đó mnC =

)!(!

!

mnm

n

là tổ hợp chập m của tập n phần tử (số cách chọn m

đối tượng trong n đối tượng được cho). Từ đó xác suất cần tìm là: 1 1

1!+

1

2!

... + (1)n 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 >

1

3) khi n

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àotrong 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àytrá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ánhọc người Đức ở thế kỷ 19. Ông thường xuyên sử dụng nguyên lý này trongcông việc của mình.

Ví dụ 1:

Page 11: Hoán vị lặp tổ hợp

11

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àysinh 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êntrong khoảng từ 0 đến 100. Hỏi rằng ít nhất có bao nhiêu học sinh dự thi để chochắ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àmră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âncó 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ênhà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ộpchứ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àmsà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ặcbằ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à

k (]N

k[ 1) < k

N

k= N.

Đ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ậytheo 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.

Page 12: Hoán vị lặp tổ hợp

12

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ấtcó ]25.000.000/10.000.000[ = 3 có cùng một số. Để đảm bảo mỗi máy có mộtsố 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ườiquen 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ậytheo số lượng người quen, ta chỉ có thể phân n người ra thành n 1 nhóm. Vậytheo 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ất1 trận nhưng chơi không quá 45 trận. Chứng minh rằng tìm được một giai đoạngồ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 ivà 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.

Page 13: Hoán vị lặp tổ hợp

13

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ấtmột số chia hết cho số khác.

Ta viết mỗi số nguyên a1, a2,..., an+1 dưới dạng aj = jk2 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ươnglẻ nhỏ hơn 2n nên theo nguyên lý Dirichlet tồn tại i và j sao cho qi = qj = q. Khi đóai= ik2 q và aj = jk

2 q. Vì vậy, nếu ki kj thì aj chia hết cho ai còn trong trườnghợ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ếttổ 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ủamộ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ó ítnhấ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 suyra 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 Alậ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ỗicá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ônglặp chập k của n phần tử.

2.1.2 Công thức tính

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

knA =n(n-1)(n-2)…(n-k+1) =

)!(

!

kn

n

Page 14: Hoán vị lặp tổ hợp

14

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ăngchọ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ợplặ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:

knA =n(n-1)(n-2)…(n-k+1) =

)!(

!

kn

n

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ử sangtậ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à knA

Ví dụ 2. Giả sử có tám vận động viên chạy thi. Người về nhất sẽ đượcnhận huy chương vàng, người về nhì nhận huy chương bạc, người về ba nhậnhuy 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 8phần tử. Vì thế

có 38A = 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ónggồm 10 cầu thủ để

tham gia các trận đấu đơn.

Giải: Có 410A = 10.9.8.7 = 5040 cách chọn.

2.2 Chỉnh hợp có lặp

2.2.1 Khái niệmChỉ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ínhKí hiệu:

knA là số chỉnh hợp lặp chập k của n phần tử ta có:

knA =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ể

Page 15: Hoán vị lặp tổ hợp

15

đượ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.

=>Theo quy tắc nhân:knA =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ầnthứ 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ộttrong 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àin đượ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ínchứ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ạibì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âydự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

Page 16: Hoán vị lặp tổ hợp

16

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áchoánvị 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ó baonhiê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ươngtrì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 nhaumà 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ủathươ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ệmCho 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ộthoá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

Cm(k1, k2,…,ks )=!!..!

!

21 kkk s

m

Page 17: Hoán vị lặp tổ hợp

17

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 ị kiểu này ch ỉ l à mộ t hoán v ịdo đó

số hoán v ị thực sự khác nhau nếu có k 1 phần tử a 1 là!

!

1km

tiếp theo

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à

!!

!

21 kkm

, .. 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

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ự 11cầ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ặplạ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.

Page 18: Hoán vị lặp tổ hợp

18

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ácdụ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ếtquả giống như áp dụng phép hoán vị đồng nhất. Chúng ta luôn có một hoánvị như vậy vì một hoán vị là một phép song ánh. Hoán vị như vậy được gọilà 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ánvị, 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ụngmộ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 Pvà Q được định nghĩa bằng hoán vị R. Chi tiết hơn, có thể đọc nhóm đốixứ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ẵnbở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ễndướ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ỗihoá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ẩnthậ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ảilà 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áchchọ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ữ

Page 19: Hoán vị lặp tổ hợp

19

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à:

37C . 2

4C . 12C . 1

1C =7 4 2 1

3 4 2 2 1 1 1 0

! ! ! !

!. !. !. !. !. !. !. !=

7

3 2 1 1

!

!. !. !. != 420.

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

!!....!.

!

21 knnn

n.

Chứng minh. Để xác định số hoán vị trước tiên chúng ta nhận thấy có 1nnC cách

giữ n1 chỗ cho n1 phần tử loại 1, còn lại n - n1 chỗ trống. Sau đó có 2

1

nnnC cách đặt

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ó

k

k

nnnnC

11 ... 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

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

1nnC . 2

1

nnnC .... k

k

nnnnC

11 ... =!!....!.

!

21 knnn

n.

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ợpcò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ầntử. ( 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ỗiphầ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 knC là số tổ hợp chập k của n phần tử, ta có

Page 20: Hoán vị lặp tổ hợp

20

knC =

)!(!

!

knk

n

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 đếnhay 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:

knC =

knAk

n

!

!=> k

nC =)!(!

!

knk

n

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 namvà 3 HS nữ đi tham gia chiến dịch "Mùa hè xanh" của Đoàn. Hỏi có bao nhiêucách?

Giải: Ta có cách chọn 4 HS nam trong số 20 HSnam và có cách chọn 3 HS nữ trong số 15 HS nữ. Theo quytắ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êucá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êncủ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ộttổ hợp chập 10 của 40 => có 10

40C cách chọn 10 sinh viên nam trong số 40 sinhviê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ợpchập 10 của 30 => có 10

30C cách chọn 10 sinh viên nam trong số 30 sinh viên nữcủa lớp

Vậy theo quy tắc nhân, có1040C ×

1030C 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

Page 21: Hoán vị lặp tổ hợp

21

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ênbấ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ầntử, 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

Kí hiệumnC là số tổ hợp có lặp chập m của n phần tử ta có:

mnC =

mnmC 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ầntử 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ãykhô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ứ ichứ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ậphợ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ầntử 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 ksố 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áctờ 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ấymộ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ợplặp chập 5 từ 7 phần tử.Do đó số cần tìm là C5

7+5-1 =462.

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

Page 22: Hoán vị lặp tổ hợp

22

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áchchia 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ánhgiố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áibá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ôngcó 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áibá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.

Page 23: Hoán vị lặp tổ hợp

23

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

program hoanvilap;uses crt;vars: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 xetva co vi tri xuat dung truoc phan tu dang xet trong xau hay khong}varj:byte;

beginok:=true;for j:=1 to k-1 doif (s[k]=s[j]) and (not sign[j]) then

beginok:=false;break;

end;end;

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

begininc(counter);write(' ');for i:=1 to n do write(b[i]);

Page 24: Hoán vị lặp tổ hợp

24

writeln;end;

procedure try(i:byte);varj:byte;

beginfor j:=1 to n do {Tap de cu}if (not(sign[j])) and (ok(j)) {Hai dieu kien de chap nhan s[j]}thenbeginsign[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 ========================*)

Beginclrscr;start;try(1);

Page 25: Hoán vị lặp tổ hợp

25

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.

Page 26: Hoán vị lặp tổ hợp

26

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à:

Page 27: Hoán vị lặp tổ hợp

27

n 0 1 2 3 4 5 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:

Page 28: Hoán vị lặp tổ hợp

28

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

Sf(n)= != n-k+1= 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-1

n + 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à Ck

n

Page 29: Hoán vị lặp tổ hợp

29

tập con chứa k phần tử của tập S. Do vậy, Ckn+1= Ck-1+ Ck

n. Khai triển ta có

hằng đẳng thức Pascal hay tam giác Pascal:

C00

C01 C1

1

C02 C1

2 C22

C03 C1

3 C23 C3

3

C04 C1

4 C24 C3

4 C44

C05 C1

5 C25 C3

5 C45 C5

5

1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

Page 30: Hoán vị lặp tổ hợp

30

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.

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

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à

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

kn=2n

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

(x+y)n= knxn-kyk (n≥2)

Page 31: Hoán vị lặp tổ hợp

31

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-

kn= Ck

n.

Hệ quả:

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

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

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

(x+y)4= C04x

4+ C14x

3y+ C24x

2y2+ C34xy3+ C4

4y4

(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

Page 32: Hoán vị lặp tổ hợp

32

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.

Page 33: Hoán vị lặp tổ hợp

33

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ộidung 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ỉnhhợ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 :………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

Page 34: Hoán vị lặp tổ hợp

34