You are on page 1of 28

CẤU TRÚC RỜI RẠC – BUỔI 1 (08/08)

Rời rạc: đối tượng có thể liệt kê được / đếm được (VD: SV của lớp, các số nguyên, các tỉnh
trong một nước, ...), đối lập với liên tục. Ta sẽ nghiên cứu các đối tượng:
 Tập hợp: các phần tử phân biệt (theo nghĩa rộng, ta còn xét multiset, cho phép các
phần tử lặp lại).
 Đối tượng tổ hợp: hoán vị, chỉnh hợp, tổ hợp.
 Đồ thị (graph).
 Máy trạng thái hữu hạn.

1) Logic.
Mệnh đề: là một câu khẳng định, có tính đúng / sai.
VD: các SV của lớp Cấu trúc rời rạc này thì đều đang học ở IUH.
VD: các SV của lớp này đều được xếp loại xuất sắc ở học kỳ trước.
Các câu có tính cảm thán, các câu hỏi, mệnh lệnh  không là mệnh đề.
 Giá trị chân trị / chân lý của mệnh đề: đúng là 1 / True (T), còn sai là 0 / False (F).
 Phân loại:
- Mệnh đề sơ cấp: cơ bản / ngắn gọn.
- Mệnh đề phức hợp: ghép của nhiều mệnh đề lại với nhau (và / hay / khi & chỉ khi).
Các phép toán trên mệnh đề: (phép toán 1 ngôi, phép toán 2 ngôi)
1) Phủ định: mệnh đề có ý nghĩa ngược lại với mệnh đề đang xét.
Mệnh đề p  phủ định: p hoặc p (còn viết là p’).
VD: p = “Hôm nay là thứ 2”, q = “Hôm nay là thứ 3”  không là phủ định của nhau.
p = “Tôi đã thi đậu môn NMLT”, q = “Tôi đã thi rớt môn NMLT”  phủ định.
2) Phép hội: cho hai mệnh đề p & q  hội của chúng là “p và q”  ký hiệu là p  q .
VD: p = “Hôm nay trời mưa lớn”, q = “Hôm nay là ngày đầu tiên tôi là SV năm 2”  hội
của p, q = “Hôm nay trời mưa lớn và Hôm nay là ngày đầu tiên tôi là SV năm 2”.
p hội q  chỉ đúng khi cả 2 mệnh đề thành phần p, q đều đúng; ngược lại thì sai.
3) Phép tuyển: cho hai mệnh đề p & q  tuyển của chúng là “p hoặc q”  ký hiệu là p  q
.
Tương tự trên, ta thay VÀ bởi HOẶC.
p tuyển q  đúng khi một trong hai mệnh đề thành phần đúng; ngược lại thì sai.
4) Phép tuyển loại: cho hai mệnh đề p & q  tuyển loại của chúng là “một trong p và q”
 ký hiệu p  q (tương ứng với phép XOR).

1
5) Phép kéo theo: cho hai mệnh đề p & q  phép kéo theo là “nếu p thì q”, “p kéo theo q”,
ký hiệu là p => q.
VD: p = “con thi đậu ĐH”, q = “mẹ sẽ thưởng cho chiếc xe”.
Nếu p thì q = “nếu con thi đậu ĐH thì mẹ sẽ thưởng cho chiếc xe”.
Mệnh đề kéo theo chỉ sai khi p đúng, q sai (giả thiết p đúng nhưng kết luận q sai; một khi
giả thiết p đã sai thì q thế nào cũng được).
6) Phép tương đương: cho hai mệnh đề p & q  phép tương đương là “p tương đương q”,
“p khi và chỉ khi q”, “p nếu và chỉ nếu”, ký hiệu là p <=> q.
Mệnh đề này đúng nếu như p, q cùng đúng, hoặc cùng sai.
p q p pq pq pq Kéo theo Tương đương
(AND) (OR) (XOR)
1 1
1 0
0 1
0 0
Trong logic, đôi khi mệnh đề p, q có thể không liên quan về mặt ngữ nghĩa nhưng vẫn thực
hiện được các phép toán với nhau.
VD: p = “1 + 1 = 3” và q = “hôm nay tôi sẽ đi đến trường”; khi đó mệnh đề “p => q” sẽ
phát biểu là: “Nếu 1+1 = 3 thì hôm nay tôi sẽ đi đến trường”  đúng quy tắc về mặt logic,
nhưng trong thực tế thì không hợp lý.
Chẳng hạn trong ngôn ngữ lập trình: if ... then ... else  điều kiện if và lệnh trong phần
then phải có liên quan ý nghĩa nhất định.
Chú ý: mệnh đề chỉ có 2 chân trị là 0, 1 (true/false), nhưng có một số ngành logic học,
người ta còn xét một số dạng mệnh đề mà chân trị là một số thực thuộc [0;1]  logic mờ
(fuzzy logic). Ta không chắc chắn 100% mà chỉ dám chắc ở một mức độ nào đó thôi.
Chẳng hạn như trong Khoa học dữ liệu có BT phân loại, nhận diện chó mèo  “đây là ảnh
mèo với mức độ tin cậy là 90%”.

Biểu thức logic (tương tự biểu thức đại số có các biến và phép tính: +, - , x, : ), thì ở đây,
ta sẽ xét các mệnh đề cùng với các phép toán trên mệnh đề: tìm cách rút gọn các biểu thức
phức tạp  có thể có nhiều biến (3, 4, 5, ... biến). VD:
E(p,q) = (p  q), F(p,q,r) = (p  q)  (q  r).

Muốn biết hai mệnh đề có tương đương với nhau không (phép biến đổi tương đương) thì
có 2 cách:
(1) Vẽ bảng chân trị rồi so sánh.
(2) Dùng các quy tắc biến đổi.

2
Chú ý thêm, mệnh đề kéo theo “p => q” có liên quan đến các loại mệnh đề sau đây:
1) Mệnh đề đảo: “q => p”.
2) Mệnh đề phản đảo: “  q =>  p”.
3) Mệnh đề nghịch đảo: “  p =>  q”.

Câu hỏi đặt ra: dùng cách vẽ bảng chân trị, kiểm tra xem mệnh đề kéo theo là tương đương
với mệnh đề nào trong 1), 2), 3)?

Tính chất quan trọng: Mệnh đề kéo theo là tương đương với mệnh đề phản đảo.
Mệnh đề đảo tương đương với nghịch đảo.
VD: “nếu hôm nay trời mưa thì tôi sẽ không đi chơi game”.
 Đảo: “nếu tôi không đi chơi game thì hôm nay trời mưa”.
 Phản đảo: “nếu tôi đi chơi game thì hôm nay trời không mưa”.
 Nghịch đảo: “nếu hôm nay trời không mưa thì tôi sẽ đi chơi game”.
Ta thấy rằng: cả 3 mệnh đề bên dưới đều “có vẻ” tương đương với mệnh đề gốc; nhưng
qua c/m ở trên, thì chỉ có mệnh đề phản đảo mới thực sự tương đương.

Khi thực hiện biến đổi biểu thức logic, ta cần chú ý thứ tự ưu tiên của phép tính:
dấu ngoặc > phủ định > hội / tuyển > kéo theo / tương đương.
Chú ý: để rõ ràng, ta nên tận dụng các dấu ngoặc.

Bảng chân trị của biểu thức logic  liệt kê tất cả khả năng có thể có giữa các biến.
VD: nếu chỉ có 2 biến p, q  các khả năng là 11, 10, 01 và 00. Còn nếu có 3 biến p, q, r
 có 8 khả năng; nếu tổng quát n biến  có 2^n khả năng.

Ở trên, ta đã có “p  q” thì tương đương với “q’  p’ ”, ngoài ra, ta còn c/m được nó cũng
tương đương với mệnh đề sau: p  q .

3
Quy ước: phép phủ định của p thì ký hiệu là –p.
VD. Dựa vào các quy tắc trên, hãy rút gọn các biểu thức logic sau đây:
a) -(p v (-p ^ q)) (viết bài bản: ( p  ( p  q )) ).
 -p ^ -(-p ^ q) quy tắc De Morgan.
 -p ^ (--p v –q) quy tắc De Morgan.
 -p ^ (p v –q) quy tắc phủ định 2 lần.
 (-p ^ p) v (-p ^ -q) luật phân phối.
 0 v (-p ^ -q) phần tử bù.
 -p ^ -q luật trung hòa.
b) (p ^ q)  (p v q). (viết bài bản: ( p  q)  ( p  q) ).
Gợi ý: khi gặp các bài có dùng dấu => , ta nên dùng luật 11) để khử dấu đó, quy về:
hội/tuyển/phủ định.
 -(p ^ q) v (p v q) luật kéo theo
 (-p v –q) v (p v q) quy tắc De Morgan
 (-p v p) v (-q v q) luật kết hợp
1v1 phần tử bù
1 luật thống trị

Các kênh làm việc:


 Google drive  tài liệu môn học cố định.
 Zalo / lms  thông tin cập nhật.

4
CẤU TRÚC RỜI RẠC – BUỔI 2 (15/08)
Ôn tập biến đổi biểu thức logic
(BTVN) Rút gọn biểu thức logic sau đây:
(p v q) ^ (-p v r) => (q v r).
(đây là câu khó vì vừa có 3 biến, vừa có phép kéo theo).
Công thức quan trọng: p => q thì tương đương –p v q.
(p v q) ^ (-p v r) => (q v r).
 -((p v q) ^ (-p v r)) v (q v r) luật kéo theo
 (-(p v q) v –(-p v r)) v (q v r) luật De Morgan
 (-p ^ -q) v (p ^ -r) v (q v r) luật De Morgan
 ((-p ^ -q) v q) v ((p ^ -r) v r) luật kết hợp
 ((-p v q) ^ (-q v q)) v ((p v r) ^ (-r v r)) luật phân phối
 ((-p v q) ^ 1) v ((p v r) ^ 1) luật về phần tử bù
 (-p v q) v (p v r) luật bao trùm
 (-p v p) v (q v r) luật kết hợp
 1 v (q v r) luật về phần tử bù
1 luật thống trị

1) Rút gọn các biểu thức sau đây:


a) -q v (-q ^ r)
b) (p ^ q) v (p ^ -q)
c) (-p ^ (p => q)) => -q
d) -(p ^ q) => (-p v (-p v q)).
Lời giải.
a) –q v (-q ^ r)
 -q theo luật hấp thu, do p v (p ^ q)  p.
Nếu ta muốn làm trực tiếp, không áp dụng luật trên vẫn được.
 (-q ^ 1) v (-q ^ r) viết –q = -q ^ 1 theo luật trung hòa
 -q ^ (1 v r) luật phân phối
 -q ^ 1 luật thống trị
 -q luật trung hòa
b) (p ^ q) v (p ^ -q)
 p ^ (q v –q) luật kết hợp

5
p^1 luật phần tử bù
p luật trung hòa
Luật hấp thu:
p v (p ^ q)  p
p ^ (p v q)  p
c) (-p ^ (p => q)) => -q
 -(-p ^ (p => q)) v –q luật kéo theo
 -(-p ^ (-p v q)) v –q luật kéo theo
 -(-p) v –q luật hấp thu
 p v –q phủ định 2 lần

d) -(p ^ q) => (-p v (-p v q))


 (p ^ q) v (-p v (-p v q)) luật kéo theo
 (p ^ q) v (-p v –p) v q luật kết hợp
 (p ^ q) v (-p) v q luật lũy đẳng (*)
 ((p v –p) ^ (q v –p)) v q luật phân phối
 (1 ^ (q v –p)) v q luật về phần tử bù
 q v (-p) v q luật trung hòa
 (q v q) v (-p) luật kết hợp
 q v –p luật lũy đẳng
Cách khác:
(*)  ((p ^ q) v q) v (-p) luật kết hợp
 q v (-p) luật hấp thu

BT về nhà:
2) Chứng minh các biểu thức sau là hằng đúng:
a) (-p v q) ^ (p v r) => (q v r)
b) ((p => q) => r) v (-p v q)
c) ((p => -q) ^ (-r v q) ^ r) => -p
d) ((p v q) ^ (p => r) ^ (q => r)) => r.

[Phần này không có giảng trên lớp, SV tự làm trước khi xem giải]

6
= -((-p v q) ^ (p v r)) v (q v r).
= (-(-p v q) v -(p v r)) v (q v r).
= ((p ^ -q) v (-p ^ -r)) v (q v r).
= (p ^ -q) v (-p ^ -r) v q v r
= ((p ^ -q) v q) v ((-p ^ -r) v r)
= ((p v q) ^ (-q v q)) v ((-p v r) ^ (-r v r))
= ((p v q) ^ 1) v ((-p v r) ^ 1)
= (p v q) v (-p v r)
= (p v -p) v (q v r)
= 1 v (q v r) = 1.
b) ((p => q) => r) v (-p v q)
= ((-p v q) => r) v (-p v q)
= (-(-p v q) v r) v (-p) v q
= (p ^ -q) v r v (-p) v q
= ((p ^ -q) v (-p)) v (r v q)
= ((p v -p) ^ (-q v –p) v ( r v q)
= (1 ^ (-q v –p) v (r v q)
= (-q v –p) v (r v q)
= (-q v q) v (-p) v r
= 1 v (-p) v r
= 1v r = 1.
c) ((p => -q) ^ (-r v q) ^ r) => -p
= ((-p v -q) ^ (-r v q) ^ r) => -p
= -((-p v -q) ^ (-r v q) ^ r) v -p
= (-(-p v -q) v -(-r v q) v -r) v –p (dùng De Morgan, đổi hết các dấu bên trong)
= ((p ^ q) v (r ^ -q) v -r) v (-p)
= ((p ^ q) v -p) v ((r ^ -q) v -r) (luật kết hợp)
= ((p v -p) ^ (q v -p)) v ((r v -r) ^ (-q v -r))
= (1 ^ (q v -p)) v (1 ^ (-q v -r))
= (q v –p) v (-q v -r)
= (q v -q) v (-p v -r)
= 1 v (-p v -r) = 1.

7
d) ((p v q) ^ (p => r) ^ (q => r)) => r
= ((p v q) ^ (-p v r) ^ (-q v r)) => r
= -((p v q) ^ (-p v r) ^ (-q v r)) v r
= (-(p v q) v -(-p v r) v -(-q v r)) v r (De Morgan, đổi hết dấu bên trong)
= ((-p ^ -q) v (p ^ -r) v (q ^ -r)) v r
= (-p ^ -q) v (p ^ -r) v (q ^ -r) v r
= (-p ^ -q) v (-r ^ (p v q)) v r (dùng luật kết hợp 2 cụm giữa)
= (-p ^ -q) v ((-r v r) ^ (r v (p v q)) (dùng luật kết hợp 2 cụm cuối)
= (-p ^ -q) v (1 ^ (r v (p v q))
= -(p v q) v r v (p v q)
= (-(p v q) v (p v q)) v r
= 1 v r = 1.

Vị từ và lượng từ.
1) Vị từ: chính là “mệnh đề chứa biến” (theo cách gọi của THPT).
VD: “x > 5” chưa phải là mệnh đề, vì tính đúng đắn của nó là chưa rõ, tùy thuộc vào giá
trị của biến (x = 6 thì đúng, x = 4 thì sai, ...).
 vị từ là các câu có chứa biến, tính chân trị chưa xác định được, tùy thuộc vào giá trị của
biến. Ký hiệu: P(x) là phép thay giá trị cụ thể vào vị từ đó.
VD: P(x) = “x^2 > 3”  P(2) = “2^2 > 3” là mệnh đề, và mệnh đề này đúng;
còn P(0) = ‘0^2 > 3’ cũng là mệnh đề, nhưng là mệnh đề sai.
Đôi khi, ta còn xét vị từ với nhiều biến: Q(x, y) = “x + 2y < 2022”.
2) Lượng từ: với mọi  & tồn tại   All, Exist.
Xét một vị từ P(x), trong đó miền của biến x được cho trước (miền này có thể là một tập
hợp hữu hạn nào đó, tập số nguyên, tập số thực, tập hợp SV của lớp, ...)
“  x, có P(x)”  vị từ P(x) sẽ đúng với tất cả các giá trị của biến x.
“  x, có P(x)”  vị từ P(x) sẽ đúng với một giá trị nào đó của biến x.
VD: xét P(x) = “x đạt học bổng ở học kỳ vừa rồi” trong đó miền x là tập hợp SV của lớp
CTRR chiều t2.
“  x, có P(x)”  “tất cả SV của lớp này đều có đạt học bổng ở học kỳ vừa rồi.”
“  x, có P(x)”  “có một SV nào đó của lớp này có đạt học bổng ở học kỳ vừa rồi”.
Phủ định của lượng từ.
“  x, có P(x)”  phủ định là “  x, có – P(x)”.
“  x, có P(x)”  phủ định là “  x, có – P(x)”.

8
Trong trường hợp có nhiều biến, chẳng hạn:
“ x ,  y, có P(x,y)”.
 “ x , y , có  P(x,y)”.
VD: xét vị từ P(x,y) = SV x thi lại ở môn y, trong đó x thuộc tập hợp SV của lớp này, y
thuộc tập hợp các môn của năm I.
“ x ,  y, P(x,y)”  “tất cả SV của lớp này đều có thi lại ở môn nào đó trong năm I”.
“ x , y , có  P(x,y)”  “tồn tại một SV của lớp này mà với mọi môn của năm I đều
không bị thi lại”.

Chú ý thêm, “ x ,  y, có P(x,y)” có KHÁC với “  y,  x, có P(x,y)” hay không?  có.


“  y,  x, có P(x,y)”  “Có một môn của năm I mà mọi SV của lớp này đều bị thi lại”.

Thứ tự thực hiện lượng từ cũng như miền của giá trị biến ảnh hưởng lớn đến tính đúng đắn
của vị từ.

Quy tắc suy diễn: là cách hình thức hóa chặt chẽ cho một chứng minh, từ các giả thiết 1,2,
..., n để suy ra được kết luận.
Ta có các quy tắc sau đây:

VD: “Nếu con thi đậu thì mẹ sẽ mua cho chiếc xe”  đã biết MĐ này đúng.
“Con thi đậu”  MĐ này cũng đúng.
Ta được quyền kết luận: “Mẹ sẽ mua cho chiếc xe”.

VD: “Nếu đi học chăm chỉ thì SV sẽ đậu môn CTRR”  đã biết MĐ này đúng.
“SV không đậu môn CTRR”  MĐ này cũng đúng.
Ta được quyền kết luận: “SV đã không đi học chăm chỉ”.

9
VD: p => q là “nếu có nhiều deadline thì phải thức khuya nhiều”.
q => r là “nếu thức khuya nhiều thì mệt”.
Ta được quyền kết luận: “nếu có nhiều deadline thì mệt”.

VD: p v q: “SV đạt học bổng khi có điểm học tập loại giỏi hoặc điểm rèn luyện xuất sắc”
-p: “SV không giỏi”.
Ta được quyền kết luận: “nếu SV này đạt học bổng thì phải có điểm rèn luyện xuất sắc”.

Để c/m một mệnh đề p là đúng, ta có thể chứng minh phủ định –p của nó là sai.
p => q tương đương –p v q, sẽ có phủ định là: - (-p v q) = p ^ -q (tức là mệnh đề “nếu”
đúng, và mệnh đề “thì” sai).
VD: chứng minh mệnh đề sau đây:
“với x, y là các số thực, nếu x^2 < 2y – 1 thì y^2 > 2x – 1”.
Áp dụng phản chứng: p ^ -q  có x^2 < 2y – 1 và y^2 <= 2x – 1.
Thật vậy, x^2 + y^2 < (2y – 1) + (2x-1)
 x^2 – 2x + 1 + y^2 – 2y + 1 < 0
 (x-1)^2 + (y-1)^2 < 0, vô lý.
Do đó, điều phản chứng là sai  ta có điều phải chứng minh.

10
VD: để chứng minh một kết quả Toán học nào đó đúng với mọi số cả âm lẫn dương, ta có
thể đi c/m cho số âm trước, sau đó c/m tiếp cho số dương.

Bài toán minh họa: cho các giả thiết (ứng với các biến mệnh đề p, q, s, r, t):
p  (q  r)
pvs
-s
tq
hãy dùng các quy tắc suy luận để chứng minh kết luận: -r  -t.
Lời giải. Dạng này có nét tương tự với phần biến đổi tương đương của biểu thức logic, tuy
nhiên, ta có nhiều giả thiết, cần biết phối hợp chúng thích hợp để c/m được.
1) pvs (giả thiết)
2) –s (giả thiết)
3) p (do tam đoạn luận rời từ 1, 2)
4) p  (q  r) (giả thiết)
5) qr (quy tắc khẳng định)
6) tq (giả thiết)
7) tr (tam đoạn luận)
8) –r  -t (phản đảo)

11
CẤU TRÚC RỜI RẠC – BUỔI 3
Sửa bài tập 2.
Bài 1. Cho không gian của biến x là {-3,-2,-1,0,1,2,3}. Hỏi có mấy giá trị của x để vị từ sau là
mệnh đề đúng: "x^2 > 2x"? (chỉ điền vào số lượng x thỏa mãn)
x = -3  9 > -6, đúng; tương tự: -2, -1 cũng đúng;
0  sai; 1, 2 cũng sai; số 3  đúng. Do đó, có 4 giá trị x thỏa mãn.

Bài 2. Quy tắc suy diễn dạng tính chất bắc cầu "P -> Q và Q -> R" thì "P -> R" được gọi là gì?
Tam đoạn luận.

Bài 3. Xét không gian các biến số nguyên và lượng từ X như sau: “với mọi n, với mọi m, tồn tại p
để p = (m+n)/2”. Hãy phát biểu mệnh đề phủ định của X và cho biết tính đúng sai của X.

Phủ định của X  tồn tại n, tồn tại m, sao cho với mọi p thì có p != (m+n)/2.
Lấy phản VD cho X: n = 1, m = 2  (m+n) / 2 = 3/2 = 1.5 là không nguyên nên luôn có với mọi
p nguyên  p != (m+n)/2.

Do đó: “phủ định của X” là đúng và “X” là mệnh đề sai.

Bài 4. Hãy chứng minh biểu thức logic sau là một hằng đúng:
((p -> q) ^ (q -> r)) -> (p -> r)
bằng cách quy tắc biến đổi de Morgan, kết hợp, phân phối, ...

((p -> q) ^ (q -> r)) -> (p -> r)


 ((p’ v q) ^ (q’ v r))’ v (p’ v r) luật kéo theo
 ((p’ v q)’ v (q’ v r)’) v (p’ v r) De Morgan
 ((p ^ q’) v (q ^ r’)) v (p’ v r) De Morgan
 ((p ^ q’) v p’) v ((q ^ r’) v r) luật kết hợp
 ((p v p’) ^ (q’ v p’)) v ((q v r) ^ (r’ v r)) luật phân phối
 (1 ^ (q’ v p’)) v ((q v r) ^ 1) luật phần tử bù
 (q’ v p’) v (q v r) luật trung hòa
 (q’ v q) v (p’ v r) luật kết hợp
 1 v (p’ v r) luật phần tử bù
1 luật thống trị

12
Bài 5. Cho P(x,y) là mệnh đề "sinh viên x đã từng truy cập vào trang web y" với x xét trong không
gian tất cả SV ĐH Công nghiệp và y là xét trong tất cả trang web mà tên miền có chứa "iuh". Hãy
phát biểu mệnh đề sau thành câu văn:
“Mọi x, tồn tại y, phủ định P(x,y)”.
 Với mọi SV của trường ĐH Công nghiệp, tồn tại một trang web có tên miền chứa iuh mà SV
này chưa từng truy cập vào đó.

Bài 6*. Hãy dùng các quy tắc suy diễn, chứng minh điều bên dưới (trong đó p, r, s, t là các mệnh
đề). (chụp ảnh bài làm)

‘giả thiết’ != ‘giả thuyết’


(1) r’  s (giả thiết)
(2) st (giả thiết)
(3) r’  t (tam đoạn luận từ 1, 2)
(4) t’  r (phản đảo)
(5) rp (giả thiết)
(6) t’  p (tam đoạn luận từ 4, 5)
(7) p’ (giả thiết)
(8) t (phủ định)

1. Phép chứng minh quy nạp.

13
VD: Chứng minh rằng với mọi n nguyên dương thì ta đều có 2^n >= n+1.
Đặt P(n) là vị từ của đề bài cho.
(1) Kiểm tra với n=1  2^1 = 1+1 = 2 nên P(1) đúng.
(2) Giả sử đã có 2^n >= n+1, tức là P(n) đúng. Khi đó:
P(n+1): 2^(n+1) >= (n+1) + 1  2.2^n >= n+2.
Theo giả sử thì 2.2^n >= 2.(n+1) = 2n+2 > n+2, P(n+1) cũng đúng.
Do đó, theo nguyên lý quy nạp thì P(n) đúng với mọi n.

2) Tập hợp và các phép toán trên đó.


* Tập hợp: đây là một nhóm các phần tử phân biệt, không tính thứ tự.

14
VD: tập hợp trong C++ là set, phân biệt với vector là cho phép phẩn tử có thể lặp lại; ở C/C++,
các tập hợp không lấy index.
Mảng: các phần tử liên tiếp nhau, có sắp xếp thứ tự  nếu cần, có thể lấy index được.
* Đặc trưng và tính chất của tập hợp:
Tập con: là một phần của tập hợp ban đầu, ký hiệu A  B  A là tập con thực sự của B khi:
i) A  B ; ii) Mọi x  A thì đều có x  B.
Nếu A cho phép bằng B được  A  B .
Số phần tử / lực lượng (cardinary)  đếm được; còn trong trường hợp mà tập đó vô hạn  không
đếm được  tập hợp có lực lượng vô cực. Ký hiệu: A  |A|, card(A).
VD: xét , là tập số tự nhiên và tập số thức  đây con thực sự của nên lực lượng của
luôn bé hơn hẳn lực lượng của .
- Số tập con  giả sử |A| = n phần tử  ứng với mỗi phần tử a(i), có 2 cách chọn là: thêm / không
thêm vào tập con  có tổng cộng 2^n tập con. Ký hiệu bộ này là power set  P(A).
- Bên cạnh tập hợp thông thường, ta còn có tập multiset  cho phép mỗi phần tử xuất hiện > 1
lần, tức là cho phép lặp lại.
VD: đi mua bút và cửa hàng có 4 loại bút (không giới hạn số lượng), muốn mua tổng cộng là 5
cây bút  khi đó, danh sách các cây bút đã mua là một multset.
* Các phép toán trên tập hợp: tương tự như với hai mệnh đề A, B:
A  B  x thuộc A hoặc x thuộc B  có bao nhiêu phần tử trong A, B thì chọn hết  tuyển.
A  B  x thuộc A và x thuộc B  chỉ lấy phần chung  hội.S
A \ B  x thuộc A và x không thuộc B  B  A \ B = C A B  phủ định mệnh đề.

VD: X là tập hợp SV của IUH, còn Y là SV theo học ngành CNTT.
X \ Y  các SV của IUH nhưng học ngành khác.
VD: A = {1,2,3,...,10} và B = {2,4,6,8,10,20,30}.
 A hợp B = {1,2,3...,10,20,30}.
 A giao B = {2,4,6,8,10}.
 A \ B = {1,3,5,7,9}
 B \ A = {20, 30}.

* Luật biến đổi quan trọng:


De Morgan: (A giao B)’ = A’ hợp B’, (A hợp B)’ = A giao B’.
Kết hợp: (A hợp B) giao C = (A giao C) hợp (B giao C).

* Tích Dercartes: xét hai tập hợp A, B bất kỳ thì khi đó:
A  B = {(a,b) | a thuộc A, b thuộc B}.

15
Tất nhiên, ta có thể có nhiều tập chứ không nhất thiết phải có 1 tập.
VD: A = {áo sơ mi, áo thun}, B = {quần tây, quần jean, quần thể dục}, C = {giày đen, giày trắng,
giày thể thao}  xét (a,b,c) với a  A, b  B, c  C là cách để chọn một kiểu ăn mặc, cũng chính
là bộ tích Decartes.

Phép toán trên tập hợp có nhiều ứng dụng, đặc biệt là trong CNTT  hệ cơ sở dữ liệu (SQL), ta
cần thực hiện các câu truy vấn trong thời gian tốt nhất có thể; trong khi bảng dữ liệu rất đồ sộ 
cần chú ý vào việc biến đổi biểu thức logic lẫn các phép toán.
* Nguyên lý bù trừ:
- Cho hai tập hợp A, B rời nhau  |A hợp B| = |A| + |B| (không có phần chung).
- Trong trường hợp tùy ý của A, B:
|A  B| = |A| + |B| - |A  B|
(vẽ sơ đồ Venn để hình dung cho dễ, cụ thể là phần chung khi lấy phép cộng |A| + |B| thì bị tính
trùng 1 lần).
Với ba tập hợp A, B, C:
| A  B  C | = |A| + |B| + |C| - |A  B| - |B  C| - |C  A| + |A  B  C|.
Đây chính là ý tưởng: đếm dư thì trừ ra, đếm thiếu thì cộng vào; và các phần giao thì dễ dàng tính
toán được.
Xét các VD  gọi tập hợp thích hợp để biểu diễn cho các thông tin.
VD1: trong lớp Khoa học dữ liệu, có 100 SV mà trong đó: có 50 bạn giỏi môn C++, 70 bạn giỏi
Python và 20 bạn chưa giỏi môn nào trong hai môn  tính số SV giỏi cả hai môn.
Cách 1.
70 + 20 = 90 gồm các SV giỏi Python hoặc không giỏi môn nào.
100 – 90 = 10 là các SV giỏi C++ nhưng không giỏi Python.
50 – 10 = 40 SV giỏi cả 2 môn.
Cách 2. Gọi A, B lần lượt là tập hợp các SV giỏi môn C++, Python.
Khi đó: |A hợp B| = 100 – 20 = 80 (những bạn giỏi ít nhất một môn).
|A| = 50, |B| = 70 nên áp dụng công thức:
|A giao B| = |A| + |B| - |A hợp B| = 50 + 70 – 80 = 40.
VD2: trong lớp Kỹ thuật phần mềm, có 100 SV mà trong đó: 40 nữ và 80 bạn là Đoàn viên. Biết
rằng có 30 nữ là Đoàn viên, tính số lượng bạn nam không là Đoàn viên.
Cách 1: có 40 nữ  100 – 40 = 60 nam.
80 Đoàn viên  80 – 30 = 50 nam Đoàn viên.
Suy ra có 60 – 50 = 10 nam không là Đoàn viên.
Cách 2: gọi A, B là tập hợp nữ, Đoàn viên. |A| = 40, |B| = 80 và |A giao B| = 30.
Từ đó: |A hợp B| = |A| + |B| - |A giao B| = 40 + 80 – 30 = 90 SV hoặc là nữ, hoặc là Đoàn viên 
còn lại 100 - |A hợp B| = 10 gồm các nam không là Đoàn viên.

16
CẤU TRÚC RỜI RẠC – BUỔI 4 (29/08)

[p  ( q v r)]  [(p  q) v (p  r)]


Cách 1: dùng bảng chân trị  ngoài việc viết đủ 8 trường hợp của 3 biến, ta cần phải điền thêm
giá trị của các biểu thức trung gian.
Cách 2: biến đổi theo các quy tắc:
 [-p v (q v r)]  [(-p v q) v (-p v r)]
 - [-p v q v r] v [-p v q v r]
 -x v x, trong đó x = -p v q v r
 1, theo luật phần tử bù.

Bài 2.
1) p (giả thiết)
2) p  -r (giả thiết)
3) –r (quy tắc khẳng định từ 1, 2)
4) q  r (giả thiết)
5) –q (quy tắc phủ định 3, 4)
//Ghi chú: viết đúng thứ tự và tên quy tắc, nói rõ phản đảo, khẳng định cụ thể của bước nào?

VD: cho a, b, c là các số dương. Viết điều kiện để a, b, c là độ dài 3 cạnh của tam giác CÂN dưới
dạng mệnh đề:
(a+b > c) ^ (b+c > a) ^ (a+c > b) ^ [(a = b) v (b = c) v (c = a)]
Tương tự, ta có thể viết được điều kiện cho: tam giác vuông, vuông cân, đều, nhọn, tù.

17
Phép đếm và các quy tắc đếm nâng cao.
1) Hai nguyên lý cơ bản: (cộng – nhân)
- Nguyên lý cộng: chia trường hợp, chia thành các phần  cộng lại.
- Nguyên lý nhân: chia thành các bước, các giai đoạn  nhân lại.
VD: đi chơi  có các loại áo: áo sơ mi (xanh/trắng/vàng), áo thun (xanh/trắng)  số cách chọn
áo để đi chơi là: 3 + 2 = 5 (chỉ chọn 1 trong 2 trường hợp).
Còn nếu mặc áo thun bên trong, áo sơ mi bên ngoài: 3 x 2 = 6:
(thun xanh, SM xanh), (thun xanh, SM trắng), (thun xanh, SM vàng),
(thun trắng, SM xanh), (thun trắng, SM trắng), (thun trắng, SM vàng).
 ta dùng phép nhân, vì có chia thành các bước.
Chú ý: NL cộng có đặc điểm là công việc thực hiện chỉ lấy 1 trong các phương án; còn NL nhân
thì làm hết các phương án (step-by-step).
VD: bạn Nhân ở Q9 đi học ĐHCN, mỗi sáng phải đi xe bus từ Q9 đến cầu SG có 3 cách chọn, từ
cầu SG có 4 cách đi đến trường  số cách đi là bao nhiêu: 3 x 4 = 12.
Đôi khi, ta cần thực hiện phối hợp nhiều nguyên lý, vừa cộng vừa nhân; thậm chí còn dùng phần
bù để đếm (vì phép đếm trực tiếp là khó).
VD: mật khẩu của trang lms có thể có độ dài là 6, 7 hoặc 8 ký tự. Mỗi ký tự có thể là chữ cái (a-z,
có 26 chữ cái) hoặc chữ số (0-9, có 10 chữ số). Tính số cách tạo mật khẩu.
Giải.
Có 3 trường hợp:
- Độ dài 6: ******  chọn ký tự cho dấu * đầu tiên, có thể là chữ cái / chữ số, nên số cách chọn
cho dấu * đầu là 26 + 10 = 36 cách; tương tự với các dấu * tiếp theo  sau khi thực hiện 6 bước,
ta được mật khẩu với số cách chọn là: 36.36.36.36.36.36 = 36^6.
- Độ dài 7: tương tự 36^7.
- Độ dài 8: tương tự 36^8.
Vậy tổng số cách lập mật khẩu là: 36^6+36^7+36^8 ~ 3 ngàn tỷ.
// về nguyên tắc, mật khẩu càng dài (không cần có các ký tự đặc biệt) sẽ càng an toàn.

Nguyên lý Dirichlet (Đi-rích-le)  chuồng bồ câu, chuồng thỏ.


+ Nếu nhốt 5 con bồ câu vào 4 cái chuồng thì chắc chắn phải có 1 chuồng có >= 2 con bồ câu.
n
+ Tổng quát: nếu nhốt n con bồ câu vào k cái chuồng thì chắc chắn sẽ có 1 chuồng có >=  
k 
(ceilling, phần nguyên trên) con bồ câu.
Chẳng hạn có 10 SV đến căn-tin ăn trưa, nhưng chỉ có 3 cái bàn, thì phải có 1 bàn có >= 4 SV. Vì
nếu không, bàn nào cũng có <= 3 SV thì 3 x 3 = 9 < 10.
VD: trong lớp 90 SV, vừa rồi thi bài thường kỳ 1 có 4 mức điểm là 7,8,9,10  sẽ có một mức
điểm có >= ceil(90/4) = 23 SV đạt được.

18
Từ nguyên lý này, ta có thể giải quyết được một số BT suy luận rất hay:
VD: trong lớp CTRR này có 90 SV mà ai cũng có ít nhất một người quen. Cmr có 2 SV có cùng
số lượng người quen.
Số lượng người quen của mỗi SV có thể từ 1 đến 89  đây là 89 cái chuồng; còn 90 SV là 90 con
bồ câu  có 2 SV có cùng số người quen.
- Chỉnh hợp (lặp / không lặp)
- Tổ hợp (lặp / không lặp)
- Hoán vị (thẳng / vòng / lặp)
Bản chất 3 bài toán trên  xuất hiện phổ biến, quan trọng  mô hình hóa lại thành 1 dạng công
thức, hàm để sử dụng cho thuận tiện.
1) Hoán vị.
a. Thẳng, không lặp: số cách sắp xếp n đồ vật vào n vị trí  n!.
VD: xếp 5 HS vào 5 cái ghế trong phòng  có 5! = 120 cách.
(nếu làm theo cách thông thường, dùng NL nhân vẫn được).
VD: 10 túi kẹo có số kẹo lần lượt là 1, 2, 3, ..., 10 và 5 SV nam, 5 SV nữ. Biết rằng SV nam chỉ
thích ăn kẹo có số lượng lẻ, SV nữ thì ăn kẹo có số lượng chẵn  tính số cách phát kẹo.
Công việc phát kẹo có 2 bước: phát cho SV nam, sau đó đến nữ.
- Phát cho SV nam: 5 người, nhận túi kẹo 1,3,5,7,9  5!.
- Phát cho SV nữ: 5 người, nhận túi kẹo 2,4,6,8,10  5!.
Số cách phát kẹo là: 5! * 5! = 14400.
b. Thẳng, có lặp: có một số đối tượng giống nhau, chẳng hạn: sách, viên bi, ...
VD: có 2 cuốn sách Toán, 3 cuốn sách Lý, 4 cuốn sách Hóa (cùng loại thì giống nhau)  có mấy
cách xếp lên kệ có 9 vị trí trống?
Nếu thông thường, ta chỉ cần lấy 9! là được; tuy nhiên, ở đây có các cuốn bị trùng lặp lại  việc
hoán vị của chúng sẽ không sinh ra tình huống mới. Khi đó, để tính số hoán vị, ta sẽ chia cho số
lượng bị lặp lại: 9! / (2! 3! 4!).
Tóm lại: bị lặp bao nhiêu lần thì chia cho bấy nhiêu giai thừa.
c. Vòng: xếp các đối tượng lên vòng tròn  cố định một vị trí trên vòng tròn, sau đó lần lượt xếp
các đối tượng còn lại vào các vị trí.
Ta chỉ quan tâm đến số cách xếp của những người còn lại  (n-1)!.
2) Chỉnh hợp: chọn k đồ vật từ n đồ vật và CÓ quan tâm thứ tự (có sự sắp xếp, vai trò khác nhau)
 chỉnh hợp chập k của n  Ank hoặc Pnk .
a. Không lặp.
VD: lớp có 90 SV, chọn 3 SV để làm các chức vụ quản lý lớp: lớp trưởng / bí thư / thủ quỹ (mỗi
người một chức vụ). Tính số cách chọn.
Cách 1: dùng nguyên lý nhân: 90 . 89 . 88 = ...
Cách 2: đây chính là chỉnh hợp chập 3 của 90  90A3 = ...

19
n!
Chú ý: Ank = = (n-k+1)(n-k+2)(n-k+3)...(n-1)n (với n >= k >= 0).
(n  k )!
Đặc biệt: nếu k = n  chính là bài toán hoán vị n!, còn nếu k = 0  1 cách.
b. Có lặp.
VD: vẫn bài toán trên, nhưng cho phép một người có thể kiêm nhiệm nhiều chức vụ?
Ta thấy, nguyên lý nhân: 90 . 90 . 90 = 90^3.
Tổng quát: chỉnh hợp có lặp, chập k của n sẽ là n^k (và kết quả của phép chọn, ta chưa chắc được
k đối tượng mà có thể <= k).

3) Tổ hợp: chọn k đồ vật từ n đồ vật và KHÔNG quan tâm thứ tự (không sắp xếp, vai trò tương tự
nhau)  tổ hợp chập k của n  Cnk .
a. Không lặp.
VD: lớp có 90 SV, chọn 3 SV để đi biểu diễn văn nghệ / đi trực vệ sinh  vai trò của các SV được
chọn ra là như nhau, nên số cách là: tổ hợp chập 3 của 90, cũng là 90C3.
Ta cũng có thể c/m trực tiếp, bằng nguyên lý nhân: chọn SV 1, SV 2 và SV 3, số cách lần lượt là
90, 89, 88  số cách chọn là: 90.89.88. Tuy nhiên, cũng cùng bộ 3 SV đó, ta sẽ bị trùng lặp lại ở
thứ tự chọn nên ta phải chia đi cho 3!  kết quả là: 90.89.88 / 3!.
n! Ak
Tổng quát: tổ hợp không lặp chập k của n sẽ là: Cnk   n .
(n  k )!k ! k !
b. Có lặp.
VD: trong cửa hàng, có 3 loại áo: xanh / đỏ / vàng (các áo cùng màu thì giống nhau, một loại có
rất nhiều cái). Muốn mua 2 cái áo (cho phép mua lặp lại), thì có mấy cách?
Liệt kê: XĐ, XV, ĐV, XX, ĐĐ, VV  6 cách.
Cho biết, nếu muốn mua 3 cái thì có mấy cách?
Tiếp tục liệt kê: XĐV, XXĐ, XXV, ĐĐX, ĐĐV, VVX, VVĐ, XXX, ĐĐĐ, VVV  có 10 cách.
Vẫn có thể mua 10 cái?  rất khó để liệt kê.
Dạng toán này, được gọi là tổ hợp lặp vì 2 lý do:
+ Không quan tâm thứ tự.
+ Kết quả thu được có sự lặp lại.
Cách giải quyết:
VD: ta liên hệ với bài toán chia kẹo Euler (Ơ-le)
Có 10 viên kẹo GIỐNG nhau cần chia cho 3 em bé, sao cho em nào cũng có kẹo  tính số cách.
ooo|ooooo|oo
Để chia kẹo cho 3 em, ta chỉ cần đặt vào giữa các khoảng trống là 2 vách ngăn  trong 9 khoảng
trống, chọn ra 2 chỗ để đặt vào  9C2 cách.
Tổng quát: (10,3)  (n,k) tức là có n viên kẹo và k em bé  Cnk11 .

20
Tuy nhiên, nếu ta đổi thành: các em bé không nhất thiết đều có kẹo  việc đặt vách ngăn sẽ trở
nên phức tạp. Khi đó, ta sẽ “mượn” tạm 3 viên kẹo và phát trước cho mỗi em 1 viên; sau đó tiếp
tục phát 10 viên kẹo kia như bình thường.
Cuối cùng, cho dù phát 10 viên đó ra sao  3 em đều có kẹo  quy về bài: phát 13 viên kẹo cho
3 em, mà em nào cũng có kẹo, áp dụng công thức: 12C2.
Tổng quát: (10, 3)  (n, k) tức là có n viên kẹo và k em bé  Cnkk11 .
Tiếp tục, gọi x, y, z là số kẹo của các em  có phương trình: x + y + z = 10.
 Nếu x, y, z > 0 thì số nghiệm là: 9C2.
 Nếu x, y, z >= 0 thì số nghiệm là: 12C2.
Quay trở lại bài toán mua áo:
VD: trong cửa hàng, có 3 loại áo: xanh / đỏ / vàng (các áo cùng màu thì giống nhau, một loại có
rất nhiều cái). Muốn mua 10 cái áo (cho phép mua lặp lại), thì có mấy cách?
Gọi x, y, z lần lượt là số áo xanh, đỏ, vàng sẽ mua  x + y + z = 10 và x, y, z >= 0.
Áp dụng công thức trên, số cách mua là: 12C2 = 66.
//nếu mua 2 cái  x+y+z = 2  số nghiệm: 4C2 = 6, trong đó 4 = 3+2-1.
//nếu mua 3 cái  x+y+z = 3  số nghiệm: 5C2 = 10.
Đây là cách giải của bài toán tổ hợp lặp:
- Gọi số lượng của các loại đồ vật cần chọn ra, chú ý tính chất (số dương, số >= 0).
- Viết thành phương trình, và áp dụng công thức để đếm là được.

21
CẤU TRÚC RỜI RẠC – BUỔI 5 (05/09)
VD1. Trong cửa hàng, có 4 loại tập vở: A, B, C, D (mỗi loại thì nhiều cuốn). Bạn Bình muốn mua
tất cả 15 cuốn sao cho loại nào cũng có >= 2 cuốn thì có mấy cách?
Gọi x, y, z, t là số tập vở của bạn Bình cần mua  x+y+z+t=15 và x, y, z, t >= 2.
 Điều kiện: x >= 2 VÀ y >= 2 VÀ z >= 2 VÀ t >= 2.
 Phủ định: x < 2 HOẶC y < 2 HOẶC z < 2 HOẶC t < 2  chú ý dễ bị sai!!!
Đặt x’ = x – 2 >=0, y’ = y – 2 >= 0, z’ = z – 2 >= 0, t’ = t – 2 >=0:
(x-2)+(y-2)+(z-2)+(t-2)= 15 - 8
 x’ + y’ + z’ + t’ = 7.
Đếm số nghiệm không âm của PT này  10C3 (là C74411  C103 ).
VD2. Trong cửa hàng, có 3 loại kẹo: A, B, C. Cô Chi muốn mua 10 cái để phát thưởng, đếm số
cách mua sao cho sao cho số lượng mỗi loại đều chẵn?
Gọi x, y, z là số kẹo mà cô Chi muốn mua  x+y+z=10 và x, y, z đều chẵn.
Đặt x = 2a, y = 2b, z = 2c với a, b, c là các số tự nhiên  2a+2b+2c = 10 nên
a+b+c=5.
Đếm số nghiệm không âm của PT này  C53311  C72 .
VD3. Trong cửa hàng, có 3 loại bánh: X, Y, Z (bánh cùng loại thì giống nhau). Bạn An muốn mua
15 cái bánh, sao cho loại Z thì được mua không quá 3 cái, tính số cách mua bánh?
Gọi a, b, c là số bánh mỗi X, Y, Z mà bạn An muốn mua  a+b+c=15 và a, b, c >= 0 còn c <= 3.
Cách 1: Xét 4 trường hợp:
c = 0  a + b = 15  C152121  C161 = 16 cách.
c = 1  a + b = 14  15 cách.
c = 2  a + b = 13  14 cách.
c = 3  a + b = 12  13 cách.
Cộng lại là được.
Cách 2: dùng phần bù.
Cho bạn An mua tùy ý  a+b+c = 15  C153131  C172 .
Xét trường hợp phủ định lại: c >= 4  dùng cách đặt biến mới như VD1, VD2: đặt c’ = c-4>= 0
thì: a+b+(c-4) = 11  a+b+c’ = 11  C113131  C132 .
Đáp số = 17C2 – 13C2.

Chú ý: ở trên, các bánh, kẹo cùng loại thì giống nhau  nếu ta gặp bài toán các đồ vật, sách, bánh
kẹo đều phân biệt nhau mà cần chia cho nhiều người thì không được dùng bài toán Chia kẹo Euler
như trên  phương pháp được dùng số Stirling loại 2:
https://en.wikipedia.org/wiki/Stirling_numbers_of_the_second_kind

22
Nhị thức Newton.
Tam giác Pascal, có đặc điểm: mỗi số ở hàng dưới thì bằng tổng 2 số ở hàng trên.

Các số này cũng chính là hệ số của khai triển của (a+b)^n, hàng thứ k tương ứng với lũy thừa k.
(a+b)^0 = 1
(a+b)^1 = a+b  hệ số là 1, 1.
(a+b)^2 = a^2+2.ab+b^2  hệ số là 1, 2, 1.
(a+b)^3 = a^3+3.a^2b+3.ab^2+b^3  hệ số là 1, 3, 3, 1.
n
Tổng quát: (a+b)^n = C a
k 0
k
n
nk
b k = Cn0 a n b 0 + Cn1 a n 1b1 + ... + Cnn 1a1b n 1 + Cnn a 0b n .

 Số hạng tổng quát: Cnk a n  k b k .


 Số lượng số hạng: n+1.
 Bậc của mỗi số hạng đều bằng n.
 Hệ số của số hạng thứ k (từ trái sang, đếm từ 0) chính là nCk.
* Các bài toán liên quan:
1) Tìm hệ số của một số hạng có mũ tương ứng trong khai triển.
2) Tính tổng các hệ số của khai triển.
3
VD. Cho khai triển nhị thức Newton (2 x 2  ) 20 . Tìm hệ số của số hạng chứa mũ 25 ; đồng thời,
x
tính tổng các hệ số của khai triển này.
Dùng số hạng tổng quát:
k
3
k
Tk = C . (2 x )
20
2 20  k
.   = C20k  220 k  3k . x 2(20  k )  k = C20k  220 k  3k . x 403k .
 x
1
am
Chú ý: a m a n  a m  n , n
 a mn , (a m ) n  a mn , n
a  an .
a
Để có số mũ = 25  40 – 3k = 25  k = 5 nên phần hệ số cần tìm là: C20
5
 215  35 = ...
Để tìm tổng hệ số, ta chỉ cần thay x = 1 vào là được  tổng = (2+3)^20 = 5^20.

23
Một cách tổng quát: nếu biểu thức có nhiều biến x, y, z, t, ...  để tính tổng hệ số, ta chỉ cần thay
tất cả bởi 1 là được.
Ta vẫn tính được hệ số của tam thức, đa thức lũy thừa lên, nhưng công thức sẽ phức tạp hơn (xem
thêm trong slide bài giảng số 2):
 n  x1 x2
Công thức tổng quát: (a1  a2   ak )n  
x1  x2 

 xk  n  x1 , x2 ,
a a
, xk  1 2
akxk trong đó số lượng

số hạng bằng số nghiệm của phương trình x1  x2   xk  n và là Cnkk11. Trong đó:

 n  n!
  .
 x1 , x2 , , xk  x1 ! x2 !...xk !
VD: Tìm hệ số của x 6 yz 3 trong khai triển sau: ( x  2 y  3 z )10 :
10!
.(x^6).(2y)^1.(3z)^3 = 840.27.2(x^6.y.z^3)  hệ số cần tìm là: 45360.
6!1!3!

Bài tập luyện tập.

Câu 1: Từ các số 1, 2,3, 4,5, 6, 7 lập được bao nhiêu số tự nhiên gồm 4 chữ số khác nhau và là:
1. Số chẵn
A. 360 B. 343 C. 523 D. 347
Số 4 chữ số có dạng: abcd  vị trí nào có ràng buộc thì ưu tiên đếm trước  d có 3 cách chọn;
a khác d nên có 6 cách, b khác a, d nên có 5 cách, còn c khác a,b,d nên có 4 cách.
Số các số cần tìm: 3 x 6 x 5 x 4 = 360.
2. Số lẻ
A. 360 B. 343 C. 480 D. 347
Tương tự trên, hoặc lấy tổng số lượng = A74 (chọn có sắp xếp) – 360 = 480.
Câu 2: Cho các số 1, 5, 6, 7 có thể lập được bao nhiêu số tự nhiên 4 chữ số với các chữ số khác
nhau:
A. 12 . B. 24 . C. 64 . D. 256 .
Chỉnh hợp: A44 hoặc hoán vị: 4!  24 cách.
Câu 3: Từ các chữ số 2, 3, 4, 5 có thể lập được bao nhiêu số gồm 4 chữ số:
A. 256 . B. 120 . C. 24 . D. 16 .
Mỗi vị trí có 4 cách chọn nên với 4 vị trí thì có 4.4.4.4 = 256.
Câu 4: Có bao nhiêu chữ số chẵn gồm bốn chữ số đôi một khác nhau được lập từ 0,1, 2, 4,5, 6,8 .
A. 252 B. 520 C. 480 D. 368
Số cần lập là: abcd  a khác 0 và d chẵn; có 2 ràng buộc. Ta chia trường hợp:
- Nếu d = 0: số a chỉ cần khác 0  a có 6 cách chọn, b, c lần lượt có 5, 4 cách  1.6.5.4 = 120.
- Nếu d khác 0: số d có 4 cách chọn  a có 5 cách (khác 0, d), b, c lần lượt có 5, 4 cách 
4.5.5.4 = 400.
Tổng các số cần tìm: 120+400=520.

24
Câu 5: Có bao nhiêu số tự nhiên có 9 chữ số phân biệt mà các chữ số viết theo thứ tự giảm dần?
A. 5 . B. 15 . C. 55 . D. 10 .
0,1,2,3,4,5,6,8,9  986543210. Ứng với một bộ 9 số  có đúng 1 cách xếp.
Ở đây, ta có 10 chữ số  chọn ra 9 chữ số có C109  10 .
Câu hỏi tương tự: nhưng các chữ số không nhất thiết phân biệt?
222221110, 100000000, 987633333, ...
Đáp số: 18C9 – 1.
(bài toán tương tự với việc mua 9 cái áo trong cửa hàng có 10 loại áo  0,1,2,...,9).
1
// Gọi số lượng chữ số là x0, x1, x2, ..., x9  x0+x1+...+x9 = 9 có C91010 1  C18 .
9

Ta phải loại đi trường hợp chọn phải 9 chữ số 0.


Câu 6: Cho tập A  1, 2,3, 4,5, 6, 7,8 . Từ tập A có thể lập được bao nhiêu số gồm 8 chữ số đôi
một khác nhau sao các số này lẻ không chia hết cho 5.
A. 15120 B. 23523 C. 16862 D. 23145
Vị trí hàng đơn vị có 3 cách: {1,3,7}, còn lại 7 số hoán vị cho nhau  7! cách.
Đáp số = 3.7!.
Câu 7: Từ thành phố A có 10 con đường đi đến thành phố B, từ thành phố A có 9 con đường đi
đến thành phố C, từ B đến D có 6 con đường, từ C đến D có 11 con đường và không có con
đường nào nối B với C. Hỏi có bao nhiêu cách đi từ A đến D?
A. 156 B. 159 C. 162 D. 176
Có 2 lựa chọn:
- ABD  10.6 = 60 cách.
- ACD  9.11 = 99 cách.
Tổng cộng = 60+99 = 159.
Câu 8: Trong một giải thi đấu bóng đá có 20 đội tham gia với thể thức thi đấu vòng tròn. Cứ hai
đội thì gặp nhau đúng một lần. Hỏi có tất cả bao nhiêu trận đấu xảy ra?
A. 190 B. 182 C. 280 D. 194
Số trận đấu = số cách chọn ra 2 trong 20 đội = 20C2 = 190.
Câu 9: Có 10 cặp vợ chồng đi dự tiệc. Tổng số cách chọn một người đàn ông và một người phụ
nữ trong bữa tiệc phát biểu ý kiến sao cho hai người đó không là vợ chồng:
A. 100 . B. 91 . C. 10 . D. 90 .
Chọn nam = 10 cách; chọn nữ = 9 cách  10.9 = 90.
Câu 10: Hội đồng quản trị của công ty X gồm 10 người. Hỏi có bao nhiêu cách bầu ra ba người
vào ba vị trí gồm chủ tịch, phó chủ tịch và thư kí, biết khả năng mỗi người là như nhau?
A. 728 B. 723 C. 720 D. 722
Chỉnh hợp chập 3 của 10  10A3 = 720 (do chọn có thứ tự).
Câu 11: Trong một tuần, bạn A dự định mỗi ngày đi thăm một người bạn trong 12 người bạn của
mình. Hỏi bạn A có thể lập được bao nhiêu kế hoạch đi thăm bạn (có thể thăm một bạn nhiều lần)?
A. 7! . B. 35831808 . C. 12! . D. 3991680
Thứ 2 có 12 cách, nhưng thứ 3 vẫn là 12 cách, ..., CN vẫn là 12 cách  12^7.
(còn nếu đề yêu cầu: thăm những người khác nhau)  12A7 = 12.11.10.9.8.7.6.

25
Câu 12: Có bao nhiêu cách sắp xếp 3 nữ sinh, 3 nam sinh thành một hàng dọc sao cho các bạn
nam và nữ ngồi xen kẽ:
A. 6 . B. 72 . C. 720 . D. 144 .
BGBGBG  xếp nam và 3 vị trí, có 3! = 6 cách; xếp nữ vào 3 vị trí còn lại: 6 cách; tổng là 6.6=36
cách. Tương tự với GBGBGB  36 cách nên đáp số = 72.

Câu hỏi tương tự: xếp 3 nam và 10 nữ thành hàng ngang sao cho không có bạn nam nào đứng cạnh
nhau, hỏi có mấy cách?
GBGGGGGBGGGGB
Xếp 10 nữ vào 10 vị trí  10! cách.
Giữa các bạn nữ, có 9 khoảng trống; cộng thêm 2 vị trí đầu – cuối  9 + 2 = 11 vị trí. Các bạn
nam đứng vào 3 trong số đó  11C3.
Sắp xếp 3 nam vào đó  3! cách. Đáp số = 10! * 11C3 * 3!

Câu 13: Số điện thoại ở Huyện Củ Chi có 7 chữ số và bắt đầu bởi 3 chữ số đầu là 790 . Hỏi ở
Huyện Củ Chi có tối đa bao nhiêu máy điện thoại:
A. 1000 . B. 100000 . C. 10000 . D. 1000000 .
Số điện thoại có dạng: 790abcd  có 10^4 = 10000.
Câu 14: Có bao nhiêu cách xếp 4 người A,B,C,D lên 3 toa tàu, biết mỗi toa có thể chứa 4 người.
A. 81 B. 68 C. 42 D. 98
Mỗi người có 3 cách lên tàu nên tổng số cách = 3.3.3.3 = 81.

Bổ sung: nếu mỗi toa chỉ chứa tối đa 3 người  có mấy cách?
Đếm theo kiểu phần bù: phủ định lại là cả 4 người dồn vào 1 toa, có 3 cách  đáp số: tổng số ở
trên, trừ đi 3, còn 78 cách.

Câu 15: Có 3 nam và 3 nữ cần xếp ngồi vào một hàng ghế. Hỏi có mấy cách xếp sao cho :
a) Nam, nữ ngồi xen kẽ và có một người nam A, một người nữ B phải ngồi kề nhau ?
A. 40 B. 42 C. 46 D. 70
b) Nam, nữ ngồi xen kẽ và có một người nam C, một người nữ D không được ngồi kề nhau ?
A. 32 B. 30 C. 35 D. 70
BGBGBG  thì cặp A, B có 5 cách ngồi  2! x 2!  5 x 2 x 2 = 20.
GBGBGB  cũng thế  20 cách nữa nên tổng cộng có 40 cách.
Tổng cộng: 72 – 40 = 32.

Câu 16: Một bàn dài có 2 dãy ghế đối diện nhau, mỗi dãy gồm có 6 ghế. Người ta muốn xếp chỗ
ngồi cho 6 học sinh trường A và 6 học sinh trường B vào bàn nói trên. Hỏi có bao nhiêu cách xếp
chỗ ngồi trong mỗi trường hợp sau :
a) Bất kì 2 học sinh nào ngồi cạnh nhau hoặc đối diện nhau thì khác trường nhau.
A. 1036800 B. 234780 C. 146800 D. 2223500
b) Bất kì 2 học sinh nào ngồi đối diện nhau thì khác trường nhau.
A. 33177610 B. 34277600 C. 33176500 D. 33177600

26
ABABAB;
BABABA
a) Có 2 cách bố trí chỗ ngồi cho HS trường A, B  6! 6!  đáp số là 2 x (6!)^2.
b) 6! x 6! x 2^6 (mỗi cột có 2 cách là: A trên B dưới hoặc ngược lại).

Câu 17: Có bao nhiêu cách sắp xếp 8 người vào một bàn tròn có 8 chỗ ngồi.
A. 720. B. 3628800. C. 5040. D. 40320.
7! = 5040.
Câu 18: Cho 10 điểm nằm trên mặt phẳng không có bất cứ 3 điểm nào khác thẳng hàng. Hỏi có
bao nhiêu tam giác có 3 đỉnh là 3 trong số 10 điểm đã cho
A. 1048. B. 30. C. 120. D. 720.
Từ 10 điểm  chọn ra 3 điểm tùy ý (không đặt tên cho các đỉnh)  10C3 = 120.
Câu hỏi tương tự: hỏi có bao nhiêu cách chọn ra 1 cặp điểm để tạo thành vector?
Vector phải có điểm đầu – cuối: chọn điểm đầu có 10 cách, chọn điểm cuối có 9 cách nên có
10.9 = 90.
(nếu đề hỏi đoạn thẳng thì chỉ có 10C2 = 45 cách, vì đoạn thẳng không quan tâm đầu cuối).
Câu 19: Đội học sinh giỏi cấp trường môn Tiếng Anh của trường THPT theo từng khối như sau:
khối 10 có 5 học sinh, khối 11 có 5 học sinh và khối 12 có 5 học sinh. Nhà trường cần chọn một
đội tuyển gồm 10 học sinh tham gia IOE cấp tỉnh. Tính số cách lập đội tuyển sao cho có học sinh
cả ba khối và có nhiều nhất 2 học sinh khối 10.
A. 50. B. 500. C. 502. D. 501.
Nhiều nhất 2 em khối 10:
 1 khối 10; 5 khối 11; 4 khối 12  5 x 1 x C54 = 25.
 1 khối 10; 4 khối 11; 5 khối 12  5 x 1 x C54 = 25.
 2 khối 10; 5 khối 11; 3 khối 12  C52 x 1 x C53 = 100.
 2 khối 10; 3 khối 11; 5 khối 12  C52 x C53 x 1 = 100.
 2 khối 10; 4 khối 11; 4 khối 12  C52 x C54 x C54 = 250.

Cộng lại: 25+25+100+100+250 = 500.


Cách khác: 5C1*10C9 + 5C2*10C8 = 500.
Câu 20: Một đoàn thanh tra gồm 4 giáo viên được chọn từ một tổ bộ môn gồm có 5 nam và 4 nữ.
Hỏi có bao nhiêu cách chọn sao cho trong đó có ít nhất một nam và ít nhất một nữ.
A. 84. B. 70. C. 140. D. 120.
Chia trường hợp: 1 nam + 3 nữ = 2 nam + 2 nữ = 3 nam + 1 nữ.
Lỗi sai: chọn ra trước 1 nam, 1 nữ  xong rồi chọn tiếp 2 người tùy ý  5 x 4 x C72 !!!

Câu 21: Hỏi có bao nhiêu cách xếp 5 bạn sinh viên A, B, C, D, E lên ghế sao cho bạn A và B
không ngồi cạnh nhau?

27
A. 24. B. 48. C. 72. D. 12.
Tổng cộng: 5! = 120.
A B ngồi cạnh nhau: AB là người đặc biệt, ghép với 3 người kia  4 người  xếp vào ghế  4!
x 2! = 48. Đáp số = 120 – 48 = 72.
Câu 22: Trên đường thẳng a, b song song nhau, lần lượt cho 17 điểm và 20 điểm. Hỏi có bao nhiêu
tam giác tạo thành từ các điểm này?
A. 5690. B. 5960. C. 5950. D. 5590.
Chọn 2 điểm trên a  17C2 cách, chọn 1 điểm trên b  20 cách  17C2*20.
Tương tự nếu 2 điểm trên b, 1 điểm trên a  20C2*17.
Cộng lại có 5950 cách.
Câu 23: Trên mặt phẳng, có 4 đường thẳng phân biệt song song nhau và cùng vuông góc với 5
đường thẳng khác, hỏi các đường đó cắt nhau tạo thành bao nhiêu hình chữ nhật?
A. 60. B. 48. C. 20. D. 36.
Để có hình chữ nhật  cần có 2 đường ngang và 2 đường dọc:
4C2 * 5C2 = 6.10 = 60.
Câu 24: Đoàn thanh niên tình nguyện có 21 nam và 15 nữ. Cần phân chia họ về 3 ấp để hoạt động
sao cho mỗi ấp có 7 nam và 5 nữ, hỏi có mấy cách?
12 12 2 7
A. 3C36 . B. (C36 ) C. 3C21C155 . 7
D. C21C147 C147 C105 .

Chọn thành viên cho ấp 1: có 21C7.15C5.


Chọn thành viên cho ấp 2: có 14C7.10C5.
Còn lại 7 nam và 5 nữ  xếp vào ấp 3 nên số cách là (D).
Chú ý: nếu việc phân chia này không tính thứ tự (không xét ấp 1, 2, 3) mà chỉ xét việc chia thành
3 nhóm  ta lấy số cách ở trên, chia cho 3!

Câu 25: Tính số cách chia 23 viên kẹo giống nhau cho 4 em bé sao cho có 1 em có đúng 12 viên
kẹo, các em còn lại có số kẹo tùy ý.
A.78. B. 1144. C. 286 D. 312.
Chọn em bé nhận 12 viên  4 cách; còn lại 11 viên phát cho 3 em  Cnkk11 (với k=3 và n=11) 
C132 nên đáp số = 4. C132 = 312.

Chú ý: tuần sau 12/9  bài thường kỳ số 2.

28

You might also like