Bo de toan roi rac (on thi cao hoc khmt)

Mệnh đề và các phép toán mệnh đề | Bài tập phần 1
Mệnh đề và các phép toán mệnh đề | Bài tập phần 1

ĐẠI HỌC QUẢNG NGÃI
BỘ ĐỀ
TOÁN RỜI RẠC
Dùng cho sinh viên khoa Công nghệ thông tin
và cho thí sinh luyện thi cao học ngành Khoa học máy tính
Biên soạn: BÙI TẤN NGỌC
– 10/2011 –

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 1
Bài toán đếm
Bài 1. Đếm số n gồm 2 chữ số, nếu:
a. n chẵn
Gọi AB là số thỏa mãn yêu cầu
Vậy A có 9 cách chọn {1, 2, 3, 4, 5, 6, 7, 8, 9}
(không chọn 0, vì chọn 0 thì số này có 1 chữ số)
B có 5 cách chọn {0, 2, 4, 6, 8}
Theo nguyên lý nhân, ta có : 9 x 5 = 45 số
b. n lẻ gồm 2 chữ số khác nhau
Gọi AB là số thỏa mãn yêu cầu
Vì là số lẻ, nên B có 5 cách chọn {1, 3, 5, 7, 9}
Sau khi ta chọn B, thì A có 8 cách chọn
Theo nguyên lý nhân, ta có : 5 x 8 = 40 số
c. n chẵn gồm 2 chữ số khác nhau
Gọi AB là số thỏa mãn yêu cầu
Khi B = {0}. A có 9 cách chọn {1, 2, 3, 4, 5, 6, 7, 8, 9}
Số cách chọn trong trường hợp này là : 9 cách
Khi B = {2, 4, 6, 8}. A có 8 cách chọn
Số cách chọn trong trường hợp này là : 4 x 8 = 32 cách
Theo nguyên lý cộng, ta có : 9 + 32 = 41 số
Cách khác:
Theo câu a ta có 45 số n chẵn. Ta có 4 chữ số chẵn gồm 2 chữ số giống
nhau: 22, 44, 66, 88. => 45 – 4 = 41 số n chẵn gồm 2 chữ số khác nhau.
: {0, 1, 2, 3, 4, 5}
a.
abc
a {1, 2, 3, 4, 5}.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 2
a xong, b a)
Sau k a, b c a, b)
b.
abc
c : {0, 2, 4}.
+ Khi c a b như sau:
c =0, a {1, 2, 3, 4, 5}.
a, c b
+ Khi c c a b như sau:
c, a c
a, c b c a)
Bài 3. Có bao nhiêu xâu khác nhau có thể lập được từ các chữ cái trong từ
MISSISSIPI, COMPUTER yêu cầu phải dùng tất cả các chữ?
Từ MISSISSIPI có chứa : 1 từ M, 4 từ I, 4 từ S và 1 từ P
Số xâu khác nhau là :
!1!.4!.4!.1
!10
Xâu COMPUTER , nên lập được 8! xâu.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 3
Bài 4. Có bao nhiêu xâu nhị phân độ dài 8 không chứa 6 số 0 liền?
Gọi A là số xâu nhị phân độ dài 8 có chứa 6 số 0 liền nhau.
B là số xâu nhị phân độ dài 8.
=> Số xâu cần đếm là : )()()( ANBNAN
N(B) = 2.2.2.2.2.2.2.2 =28
= 256.
N(A) = 10
(00x, 11x, 1×1, x11, x10 ,1×0, 10x, x01,0x1, 01x : x=000000)
Vậy số xâu cần đếm là : 256 – 10 = 246
Bài 5. Đếm số byte
a. Bất kỳ
Số byte là một dãy số có dạng: xxxxxxxx, x có 2 cách chọn 0 hoặc 1.
Theo nguyên lý nhân ta có : 2.2.2.2.2.2.2.2 = 28
= 256
b. Có đúng hai bít 0.
Có nghĩa là chuỗi luôn có 2 bit 0 và các bit còn lại là 1.
Bài toán này tương đương với tính số cách sắp xếp các xâu từ: 00111111
Đây là hoán vị lặp của 8 phần tử với 2 loại: 2 số 0 và 6 số 1.
8!/2!.6! = 7.8/2 = 28 xâu
c. Có ít nhất 2 bit 0
= Số xâu bất kỳ (a) – Số xâu không có bit 0 – Số xâu có 1 bit 0
Số xâu không có bit 0 = 1 trường hợp (11111111)
Số xâu có 1 bit 0 = 8!/1!7!= 8
256 – 1 – 8 = 247
d. Bắt đầu 00 và kết thúc 00
Xâu này có dạng : 00xxxx00
Theo nguyên lí nhân, ta có : 1. 2.2.2.2 = 24
= 16
e. Bắt đầu 11 và kết thúc không phải 11

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 4
Gọi A là số xâu bắt đầu 11, có dạng 11xxxxxx
Theo nguyên lý nhân, ta có : A= 1.1.2.2.2.2.2.2 = 26
= 64
Gọi B là số xâu bắt đầu là 11 và kết thúc là 11, có dạng 11xxxx11
Theo nguyên lý nhân, ta có : B= 1.1.2.2.2.2.1.1 = 24
= 16
Gọi C là số xâu bắt đầu 11 và kết thúc không phải 11
=> C = A – B = 64 – 16 = 48
Bài 6.
a. Mật khẩu máy tính gồm 1 chữ cái và 3 hoặc 4 chữ số. Tính số mật khẩu tối đa
có thể.
Dãy gồm 1 chữ cái và 3 chữ số có dạng: LNNN, NLNN, NNLN, NNNL
Trong đó L là chữ cái có 26 cách chọn và mỗi N là chữ số có 10 cách chọn.
Vì vậy theo nguyên lý nhân, ta có : 4 × 26 × 10 × 10 × 10 = 104000.
Tương tự dãy có 1 chữ cái và 4 chữ số : 5 × 26 × 10 × 10 × 10 × 10 = 1300000.
Theo nguyên lý cộng, ta có: 104000+ 1300000 = 1404000 (mật khẩu).
b. Như trên nhưng không lặp chữ số
Số mật khẩu gồm 1 chữ cái và 3 chữ số = 4 × 26 × 10 × 9 × 8 = 74880
Số mật khẩu gồm 1 chữ cái và 4 chữ số = 5 × 26 × 10 × 9 × 8 × 7 = 655200
Theo nguyên lý cộng, ta có: 74880 + 655200 = 730080 (mật khẩu).
Bài 7.
Đoäi boùng ñaù ACB coù 20 caàu thuû. Caàn choïn ra 11 caàu thuû, phaân vaøo 11 vò trí treân
saân ñeå thi ñaáu chính thöùc. Hoûi coù maáy caùch choïn neáu :
a. Ai cuõng coù theå chôi ôû baát cöù vò trí naøo ?
Choïn ra 11 cầu thủ trong 20 caàu thuû , xeáp vaøo 11 vò trí treân saân. Soá caùch
choïn baèng chænh hôïp khoâng laëp chaäp 11 cuûa 20 phaàn töû :
0006704425728
!9
!20
)!1120(
!20
)!(
!
kn
n
Ak
n caùch.
b. Chæ coù moät caàu thuû ñöôïc chæ ñònh laøm thuû moân, caùc caàu thuû khaùc chôi ôû vò trí
naøo cuõng ñöôïc ?

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 5
Moät caàu thuû ñaõ chæ ñònh laøm thuû moân, vaäy ta caàn choïn ra 10 caàu thuû trong 19 caàu
thuû coøn laïi xeáp vaøo 10 vò trí. Soá caùch choïn baèng chænh hôïp khoâng laëp chaäp 10
cuûa 19 phaàn töû :
003352212864
!9
!19
)!1019(
!19
)!(
!
kn
n
Ak
n caùch.
c. Coù 3 caàu thuû chæ coù theå laøm thuû moân ñöôïc, caùc caàu thuû khaùc chôi ôû vò trí naøo
cuõng ñöôïc ?
Coù 3 caùch choïn 1 caàu thuû ñeå laøm thuû moân töø 3 caàu thuû. Sau khi ta choïn thuû moân
xong, keá ñeán choïn 10 caàu thuû trong 17 caàu thuû coøn laïi ñeå xeáp vaøo 10 vò trí, coù:
07057290240
!7
!17
)!1017(
!17
)!(
!
kn
n
Ak
n caùch
Theo nguyeân lyù nhaân, ta coù: 3 07057290240 = 211718707200 caùch.
Bài 8. Coù 8 ngöôøi ñi vaøo 1 thang maùy cuûa moät toøa nhaø 13 taàng. Hoûi coù bao nhieâu
caùch ñeå :
a. Moãi ngöôøi ñi vaøo 1 taàng khaùc nhau.
Soá caùch ñi vaøo 8 taàng khaùc nhau cuûa 8 ngöôøi naøy laø soá caùch choïn 8 trong soá 13
taàng khaùc nhau (moãi taàng ñöôïc ñaùnh soá töø 1 ñeán 13). Ñoù laø soá chænh hôïp khoâng
laëp chaäp 8 cuûa 13 phaàn töû:
51891840
!5
!13
)!813(
!13
)!(
!
kn
n
Ak
n
b. 8 ngöôøi naøy, moãi ngöôøi ñi vaøo 1 taàng baát kì naøo ñoù.
Moãi ngöôøi coù 13 caùch löïa choïn töø taàng 1 ñeán 13. Maø coù 8 ngöôøi. Vaäy soá caùch
choïn laø 813
.
Bài 9. Có bao nhiêu xâu có độ dài 10 được tạo từ tập {a, b, c} thỏa mãn ít nhất 1
trong 2 điều kiện:
– Chứa đúng 3 chữ a & chúng phải đứng cạnh nhau
– Chứa đúng 4 chữ b & chúng phải đứng cạnh nhau
Gọi A là số xâu có độ dài 10 có chứa đúng 3 chữ a đứng cạnh nhau.
B là số xâu có độ dài 10 có chứa đúng 4 chữ b đứng cạnh nhau.
Như vậy: A B là số xâu mà ta phải tìm.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 6
Theo nguyên lý bù trừ, ta có: N(AUB) = N(A) + N(B) – N(A∩B)
Ta tính N(A) như sau:
Xét trường hợp aaa ở đầu: aaaX1X2X3X4X5X6X7.
– Xi (i=1..7) chỉ có 2 giá trị là b, c, vậy số trường hợp đối với 7 ký tự này
giống như xâu nhị phân có độ dài 7, hay bằng 27
trường hợp.
– Xâu aaa, có thể được xếp vào 8 vị trí (aaaX1X2X3X4X5X6X7,
X1aaaX2X3X4X5X6X7, X1X2aaaX3X4X5X6X7, X1X2X3aaaX4X5X6X7,
X1X2X3X4aaaX5X6X7 X1X2X3X4X5aaaX6X7, X1X2X3X4X5X6aaaX7,
X1X2X3X4X5X6X7aaa). Vì vậy: N(A) = 8.27
+ Tương tự, số lượng xâu có 4 chữ b đứng cạnh nhau, N(B) = 7.26
+ N(A∩B) được tính bằng cách gộp aaa = X, bbbb = Y, còn lại là 3 chữ c.
Ta tính số xâu từ dãy: XcccY có: 5!/1!3!1! = 4.5 = 20 trường hợp.
Vậy số xâu cần tính là: 8.27
+ 7.26
– 20 = 2476.
Bài 10. (Đề thi cao học ĐH CNTT TP HCM-2010)
Xét biển số xe: A1A2A3N1N2N3N4N5N6
Ai(i=1..3): A->Z; Nj(j=1..6): 0->9
a. Hỏi có bao nhiêu biển số khác nhau?
b. Hỏi có bao nhiêu biển số thỏa điều kiện: ba mẫu tự khác nhau đôi một và
trong biển số có đúng 1 chữ số 3 và 1 chữ số 5?
c. Hỏi có bao nhiêu biển số thỏa điều kiện: trong biển số có ít nhất 1 chữ số 3 và
1 chữ số 5?
a. Ai (i=1..3) có 26 cách chọn từ 26 chữ cái tiếng Anh từ A .. Z
Nj(j=1..6) có 10 cách chọn từ 10 chữ số từ 0 .. 9
Theo nguyên lý nhân ta có: 26.26.26.10.10.10.10.10.10 = 263
.106
biển số.
b. Số cách chọn 3 mẫu tự A1A2A3 khác nhau: A1 có 26, A2 có 25, A3 có 24
cách.
Số cách chọn 4 chữ số N1N2N3N4 không có số 3 và số 5: 8.8.8.8 = 84
cách.
Số cách đặt số 3 vào dãy 4 chữ số N1N2N3N4 là 5 cách, đó là: 3N1N2N3N4,
N13N2N3N4, N1N23N3N4, N1N2N33N4, N1N2N3N43.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 7
Tương tự số cách đặt số 5 vào 5 dãy có 5 chữ số đã liệt kê ở trên là : 5.6=30
Theo nguyên lý nhân, ta có : 24. 84
.30 cách.
c. Gọi A là số biển số không có chứa chữ số 3 và chữ số 5.
NA = 263
.86
biển số
Gọi B là số là số biển số có chứa chữ số 3 và không có chứa chữ số 5.
NB = 263
.96
biển số
Gọi C là số là số biển số có không chứa chữ số 3 và có chứa chữ số 5.
NC = 263
.96
biển số
Gọi D số biển số có ít nhất 1 chữ số 3 và 1 chữ số 5
ND = N – NA – NB – NC Theo câu a: N= 263
.106
= 263
.106
– 263
.96
– 263
.96
– 263
.86
= 263
(106
– 2.96
– 86
).
Bài 11.
a. Có bao nhiêu số có n chữ số mà có m chữ số đầu và m chữ số cuối tương ứng
giống nhau. (n>2m>2, n,m N).
Gọi A dãy số cần tìm, A có dạng:
Số cách chọn m chữ số đầu tiên và m chữ số cuối tương ứng giống nhau bằng
chỉnh hợp lặp chập m của 10 phần tử (0..9): 9.10m-1
(Chữ số đầu có 9 cách chọn, vì
bỏ số 0 đứng đầu).
Số cách chọn dãy số ở giữa:
Dãy này gồm có n-2m chữ số. Số cách chọn là: 10n-2m
.
Theo nguyên lý nhân, ta có: 9. 10m-1
.10n-2m
chữ số.
b. Ứng dụng tính số chữ số có 10 chữ số mà 3 chữ số đầu và 3 chữ số cuối
tương ứng giống nhau.
Số chữ số thỏa mãn đề bài bằng: 9.102
.1010-6
= 9.102
.104
= 9000000.
xx…xbb…bxx…x
n
m

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 8
Bài 12. (Đề thi cao học Đà Nẵng – 8/2008)
a. Trong một lớp học có 30 người. Cho biết có bao nhiêu cách cử một ban đại
diện gồm 1 lớp trưởng, 1 lớp phó và 1 thủ quỹ.
Có 30 cách chọn 1 lớp trưởng.
Sau khi chọn 1 lớp trưởng xong, có 29 cách chọn 1 lớp phó.
Sau khi chọn 1 lớp trưởng, 1 lớp phó xong, có 28 cách chọn 1thủ quĩ.
Theo nguyên lý nhân, ta có : 30.29.28 = 24360 cách chọn.
Cách khác:
Số cách chọn chính bằng số chỉnh hợp không lặp chập 3 của 30 phần tử :
A(30,3) = 30!/(30-3)!= 24360.
b. Cho biết có thể nhận bao nhiêu xâu ký tự khác nhau bằng cách sắp xếp lại
các chữ cái của từ SUCCESS.
Từ SUCCESS có: 3 chữ S, 2 chữ C, 1 chữ U và 1 chữ E.
Vậy có : 4207.6.5.2
2
7.6.5.4
!1!.2!.1!.3
!7
xâu khác nhau.
Bài 13. (Đề thi cao học Đà Nẵng – 2/2009)
a. Giả sử chúng ta có 5 viên bi giống nhau và 3 chiếc túi khác màu là xanh,
vàng và đỏ. Cho biết có bao nhiêu cách bỏ bi vào các túi? Ví dụ: cách 1 -> túi
xanh 5 viên, túi vàng và túi đỏ không có bi; cách 2 -> túi xanh 3 viên, túi vàng
và túi đỏ mỗi túi 1 viên, …
Số cách bỏ bi tương ứng chính bằng số tổ hợp lặp chập 5 từ tập có 3 phần tử là:
21
2
7.6
!2)!.27(
!72
7
13
153
1
1 CCCn
kn
b. Giả sử chúng ta có 5 viên bi (2 bi sắt, 2 bi chai và 1 bi đất) và 3 chiếc túi màu
xanh, vàng và đỏ. Cho biết có bao nhiêu cách bỏ bi vào các túi? Ví dụ: Cách 1
túi xanh chứa 2 bi sắt, túi vàng 2 bi chai và túi đỏ 1 bi đất; cách 2 -> túi xanh 1
bi sắt, túi vàng 2 bi chai + 1 bi sắt và túi đỏ 1 bi đất, …
Ta bỏ lần lượt từng loại vào 3 cái túi:
+ Bỏ 2 viên bi sắt vào 3 cái túi, có 6
2
4.3
!2)!.2(
!42
4
13
123
1
1 CCCn
kn cách bỏ

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 9
+ Bỏ 2 viên bi chai vào 3 cái túi, có 6
2
4.3
!2)!.2(
!42
4
13
123
1
1 CCCn
kn cách bỏ bi
+ Bỏ 1 viên bi chai vào 3 cái túi, có 3
!2!.1
!32
3
13
113
1
1 CCCn
kn cách bỏ bi
Theo nguyên lý nhân, ta có: 6.6.3 = 108 cách bỏ bi.
c. Giả sử chúng ta có 5 viên bi (2 bi sắt, 2 bi chai và 1 bi đất. Cho biết có bao
nhiêu cách sắp chúng thành hàng? Ví dụ: sắt sắt chai chai đất, sắt chai sắt chai
đất,…
Cách sắp các viên bi thành hàng chính bằng hoán vị lặp của 5 phần tử, trong đó 2
bi sắt, 2 bi chai và 1 bi đất, vậy có: 30
2
5.4.3
!1!.2!.2
!5
cách sắp bi.
14. (Đề thi cao học ĐH CNTT TPHCM -5/2001)
a. Tìm số các chuỗi 8 bits thỏa mãn điều kiện: bit đầu tiên là 1 hay 2 bit cuối là 0
Gọi A là số chuỗi 8bits có bit đầu tiên là 1
B là số chuỗi 8bits có 2 bit cuối là 0.
Theo nguyên lý bù trừ, ta có N(A B) = N(A) + N(B) – N(A B)
Tính N(A): Gọi S=s1s2s3s4s5s6s7s8 là chuỗi 8bits có bit đầu tiên là 1. Vậy s1 có 1
trường hợp, si(i=2..8) có 2 trường hợp 0 và 1. Theo nguyên lý nhân, ta có:
N(A) = 1.2.2.2.2.2.2.2 = 27
Tương tự: N(B) = 26
.
N(A B) = 25
Vậy: N(A B) = 27
+ 26
– 25
= 160
b. Mỗi người sử dụng một hệ thống máy tính của một công ty X phải sử dụng
một password dài từ 6 đến 8 ký tự, trong đó mỗi ký tự là một chữ cái hoặc là một
chữ s Mỗi password phải có ít nhất một chữ số. Hỏi có thể lập được bao nhiêu
password khác nhau?
n
.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 10
n
.
n
– 52n
6
– 526
7
– 527
8
– 528
Theo 6
– 526
) + (627
– 527
)
+ (628
– 528
)
6
– 266
) + (367
– 267
)
+ (368
– 268
)
15. (Đề thi cao học ĐH KHTN-1999)
Xét 3 chuỗi ký tự trên tập mẫu tự {a, b, c} ( với a < b < c) : s1 = ac, s2 = aacb, s3
= aba.
a. Hãy sắp xếp chúng theo thứ tự tăng đối với thứ tự từ điển.
a < b < c, nên s2 < s3 < s1)
b. Cho biết giữa s1 và s3 có bao nhiêu chuỗi ký tự có chiều dài 6.
s3 = aba < ab * * * * < s1 = ac
Bài 16. Cho trước một đa giác lồi P có 10 đỉnh lần lượt là A, B, C, D, E, F, G, H,
I, J. Giả sử rằng trong đa giác không có 3 đường chéo nào cắt nhau tại một
điểm. Hãy cho biết đa giác có tổng bao nhiêu đường chéo.
Vì đa giác lồi P có 10 đỉnh, nên tổng số các đường nối 2 đỉnh bất kỳ của P chính
bằng tổ hợp chập 2 (đỉnh) của 10 (đỉnh).
45
2
10.9
!2)!.210(
!102
10C cạnh.
Theo đề bài đa giác lồi P có 10 cạnh, vậy số đường chéo của đa giác P là:
45 -10 =35

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 11
Bài 17. Tìm số nghiệm nguyên không âm của:
a. Phương trình 204321 xxxx với x1 0 ; x2 0; x3 0; x4 0
Ta nhận thấy mỗi nghiệm của phương trình ứng với một cách chọn 20 phần tử từ
một tập có 4 loại, sao cho có x1 phần tử loại 1, x2 phần tử loại 2, x3 phần tử loại 3,
x4 phần tử loại 4 được chọn. Vậy số nghiệm bằng số tổ hợp lặp chập 20 từ tập có 4
phần tử là:
177123.11.7
3.2
23.22.21
!3!.20
!23
!3)!.323(
!233
23
14
1204
1
1 CCCn
kn
b. Phương trình 204321 xxxx với x1 6 ; x2 3; x3 9; x4 -2
x1 > 6 x1 – 6 0 Đặt : a = x1 – 6 => x1 = a + 6
x2 > 3 x2 – 3 0 b = x2 – 3 => x2 = b + 3
x3 > 9 x3 – 9 0 c = x3 – 9 => x3 = c + 9
x4>-2 x4 + 2 0 d = x4 + 2 => x4 = d – 2
204321 xxxx a + 6 + b + 3 + c + 9 + d – 3 = 20
a + b + c + d = 5 với a 0; b 0; c 0; d 0
Vậy có : 56
3.2
8.7.6
!3!.5
!8
!3)!.38(
!83
8
14
154
1
1 CCCn
kn nghiệm
c. Bất phương trình x1 + x2 + x3 ≤ 11 với x1 0; x2 0; x3 0.
Thêm ẩn phụ x4 0.
ương đương x1 + x2 + x3 + x4 = 11 với x1 0; x2 0;
x3 0; x4 0.
364
3.2
14.13.12
!3!.11
!143
14
14
1114
1
1 CCCn
kn .
d. Phương trình x + y + z = 10 với 0 x 2, 0 y 4, 0 z 6.
Gọi U là tập tất cả các nghiệm nguyên không âm của phương trình x + y + z = 10,
ta có:
66
2
12.11
!2!.10
!122
12
13
1103
1
1 CCCUN n
kn .
Gọi: A là tập nghiệm với x 3, y 0, z 0.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 12
B là tập nghiệm với x 0, y 5, z 0.
C là tập nghiệm với x 0, y 0, z 7.
Theo nguyên lý bù trừ, số nghiệm nguyên của phương trình là:
N* = N – A B C
A B C = A + B + C + A B + A C + B C – A B C
A là tập nghiệm với x 3, y 0, z 0, đặt x’=x-3, y’=y, z’=z, phương trình đã
cho tương đương với x’ + y’ + z’ = 7 với x’ 0, y’ 0, z’ 0.
=> A = C(9,2) = 9!/7!.2! = 8.9/2 = 36.
Tương tự : B = C(7,2) = 7!/5!.2! = 6.7/2 = 21.
C = C(5,2) = 5!/3!.2! = 4.5/2 = 10.
A B : x 3, y 5, z 0 : => x’ + y’ + z’ = 2 với x’ 0, y’ 0, z’ 0.
A B =C(4,2) = 4!/2!2!= 3.4/2 = 6.
A C : x 3, y 0, z 7 : => x’ + y’ + z’ = 0 với x’ 0, y’ 0, z’ 0.
A C =C(2,2) = 2!/0!2! = 1.
B C : x 0, y 5, z 7 : => x’ + y’ + z’ = -2 với x’ 0, y’ 0, z’ 0.
=> B C =0.
A B C : x 3, y 5, z 7 : => x’ + y’ + z’ = -5 với x’ 0, y’ 0, z’ 0.
=> A B C =0.
Vậy : A B C = 28 + 21 + 10 + 6 + 1 + 0 – 0 = 60
=> N* = 66 – 60 = 8.
Đó là các nghiệm: (0,4,6); (1,3,6); (1,4,5); (2,2,6); (2,3,5); (2,4,4);
N (x 0, y 0, z 0)
A
x 3
B
y 5
C
z 7
N*

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 13
e. Phương trình 204321 xxxx (1) thỏa mãn x1 ≤ 3; x2 ≥ 2; x3 > 4
Vì các biến nhận giá trị nguyên. Nên điều kiện x1 ≤ 3; x2 ≥ 2; x3 > 4 được viết lại
là: x1 ≤ 3; x2 ≥ 2; x3 ≥ 5 (*). Xét các điều kiện sau:
x2 ≥ 2; x3 ≥ 5 (**)
x1 ≥ 4; x2 ≥ 2; x3 ≥ 5 (***)
Ta gọi p, q, r lần lượt là các số nghiệm nguyên không âm của phương trình thỏa
mãn (*), (**), (***).
Ta có: p = q – r
Trước hết, ta tìm q như sau:
Đặt: x1’= x1, x2’ = x2 – 2, x3’ = x3 – 5, x4’ = x4.
Phương trình (1) trở thành: x1’ + x2’ + x3’ + x4’ = 13 (2)
Số nghiệm nguyên không âm của (2) chính bằng số nghiệm của (1) thỏa mãn (**).
Mà số nghiệm của (2) là .56016.5.7
3.2
16.15.14
!3!.13
!163
16
14
1134
1
1 CCCn
kn
Ta tìm r như sau:
Đặt: x1’= x1 – 4, x2’ = x2 – 2, x3’ = x3 – 5, x4’ = x4.
Phương trình (1) trở thành: x1’ + x2’ + x3’ + x4’ = 9 (3)
Số nghiệm nguyên không âm của (3) chính bằng số nghiệm của (1) thỏa mãn
(***). Mà số nghiệm của (3) là: 2204.11.5
3.2
12.11.10
!3!.9
!123
12
14
194
1
1 CCCn
kn
=> P = q – r = 560 – 220 = 340.
Vậy số nghiệm nguyên nguyên không âm của phương trình (1) thỏa điều kiện (*)
là 340.
. (Đề thi cao học ĐH Đà Nẵng – 10/2010).
(1)
:

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 14
12650
4.3.2
25.24.23.22
!4!.21
!25
!4)!.425(
!254
25
15
1215
1
1 CCCn
kn
b. n x1>2,
x5<4.
+ x1 ≥ 3 (II)
+ x1 ≥ 3, x5 ≥ 4 (III)
– r.
(1)
x1 ≥ 3 – – 3 x1 = a + 3
a + 3 + b + c + d + e = 21
a + b + c + d + e = 18 (2)
≥ 3.
q = 7315
4.3.2
22.21.20.19
!4!.18
!22
!4)!.422(
!224
22
15
1185
1
1 CCCn
kn
II): x1 ≥ 3, x2 ≥ 0, x3 ≥ 0, x4 ≥ 0, x5 ≥ 4.
x1 ≥ 3 – – 3 x1 = a + 3
x5 ≥ 4 x5 – 4 ≥ 0 e = x5 – 4 x5 = e + 4
a + 3 + b + c + d + e + 4 = 21
a + b + c + d + e = 14 (3
x1 ≥ 3, x5 ≥ 4.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 15
r = 3060
4.3.2
18.17.16.15
!4!.14
!18
!4)!.418(
!184
18
15
1145
1
1 CCCn
kn
– r = 7315 – 3060 = 4255.
. ( – 9/2011)
Người ta chia 10 viên kẹo (hoàn toàn giống nhau) cho 3 em bé.
a. Có bao nhiêu cách chia kẹo
Gọi x1, x2, x3 lần lượt là số kẹo được chia cho mỗi em
Ta có : x1 + x2 + x3 = 10 với x1 ≥ 0, x2 ≥ 0, x3 ≥ 0
0
3
10 3
Vậy có 66 cách chia 10 viên kẹo cho 3 em bé.
b. Có bao nhiêu cách chia kẹo sao cho em nào cũng có ít nhất 1 viên
Gọi x1, x2, x3 lần lượt là số kẹo được chia cho mỗi em. Vì mỗi em phải có ít nhất 1
viên nên: x1 + x2 + x3 = 10 (1) với x1 ≥ 1, x2 ≥ 1, x3 ≥ 1.
Đặt: x1’ = x1 – 1 ≥ 0 x1 = x1’ + 1 (a)
x2’ = x2 – 1 ≥ 0 x2 = x2’ + 1 (b)
x3’ = x3 – 1 ≥ 0 x3 = x3’ + 1 (c)
Thay (a), (b) và (c) vào phương trình (1), ta được :
x1’ + x2’ + x3’ = 7 (2) với x1’ ≥ 0, x2’ ≥ 0, x3’ ≥ 0
Số nghiệm nguyên dương của phương trình (2) cũng chính bằng số nghiệm nguyên
dương của phương trình (1) thỏa mãn với điều kiện mà đề bài đưa ra và bằng:
Vậy có 36 cách chia 10 viên kẹo cho 3 em bé mà mỗi em bé có ít nhất 1 viên.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 16
Bài 20. (Đề thi cao học ĐH Đà Nẵng – 8/2009).
Cho bảng chữ cái gồm n ký tự phân biệt, trong đó có ký tự a. Hãy cho biết:
a. Có bao nhiêu chuỗi ký tự được xây dựng từ có độ dài p.
Số chuỗi có độ dài p được xây dựng từ bảng chữ cái gồm n ký tự phân biệt,
chính bằng chỉnh hợp lặp chập p của n phần tử: p
n .
b. Có bao nhiêu chuỗi ký tự được xây dựng từ có độ dài p chứa ít một ký tự a.
Số chuỗi có độ dài p không chứa ký tự a là: p
n )1( .
Số chuỗi có độ dài p chứa ít nhất 1 ký tự a bằng số chuỗi có độ dài p trừ đi số chuỗi
có độ dài p không chứa ký tự a: p
n – p
n )1( .
c. Có bao nhiêu chuỗi được xây dựng từ có độ dài p chứa chỉ một ký tự a.
Gọi B là số chuỗi có độ dài p-1 không có ký tự a là: B = 1
)1( p
n .
Để có chuỗi có đúng 1 ký tự a, ta đem chèn ký tự a vào số chuỗi B. Ứng với 1
chuỗi trong B có p cách chèn ký tự a vào.
Vậy số chuỗi được xây dựng từ có độ dài p chứa chỉ một ký tự a là: 1
)1( p
np
d. Có bao nhiêu chuỗi ký tự được xây dựng từ có độ dài p có đúng q ký tự a.
Số tập hợp gồm q vị trí trong số p vị trí của chuỗi có độ dài p là:
!)!.(
!
qqp
p
Cq
p
Trong chuỗi p, có q ký tự a, số ký tự ký còn lại không có chứa a là p-q, và bằng
qp
n )1(
Vậy số chuỗi được xây dựng từ có độ dài p chứa q ký tự a là: qp
n
qqp
p
)1(
!)!.(
!
Bài 21. Đếm số cách đặt 20 cuốn sách vào 4 ngăn tủ, mỗi ngăn đựng 5 cuốn,
nếu:
a. Mỗi ngăn được đánh số phân biệt
b. Các ngăn như nhau
a. Chọn 5 cuốn sách bỏ vào ngăn 1, có :
!5)!.15(
!205
20C cách
Sau khi chọn 5 cuốn bỏ vào ngăn 2, số sách còn lại là 15. Chọn tiếp 5 cuốn
bỏ vào ngăn 2, có:
!5)!.10(
!155
15C cách.

Bài Hay  Bài tập : Phần đại số Boole. I. Nội dung bài tập Tính biểu thức của các

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 17
Tương tự, chọn 5 cuốn trong số sách còn bỏ vào ngăn 3, có:
!5)!.5(
!105
10C cách
Bỏ 5 cuốn cuối cùng vào ngăn 4, có : 1
!5)!.0(
!55
5C cách.
Theo nguyên lý nhân, ta có: 4
)!5(
!20
1
!5)!.5(
!10
!5)!.10(
!15
!5)!.15(
!20
cách bỏ sách.
b. Vì 4 ngăn như nhau nên số cách bỏ sách vào 4 ngăn là:
!4)!5(
!20
4
Bài 22. (Đề thi cao học ĐH Đà Nẵng – 3/2010).
Cho bảng chữ cái, gồm bốn chữ số {1, 2, 3, 4} và bảy ký tự {a, b, c, d, e, f, g}.
a. Có bao nhiêu từ có độ dài n được xây dựng từ bảng chữ cái trên.
Ta có bảng chữ cái là : 11.
Số xâu có độ dài n được xây dựng trên bảng có 11 chữ, chính bằng chỉnh hợp lặp
chập n của 11 phần tử. Vậy : 11n
.
b. Có bao nhiêu từ có độ dài n mà trong từ đó không có hai ký tự đứng liền kề.
Gọi M là từ có độ dài n mà trong đó có hai ký tự kề nhau.
Gọi A là từ có độ dài n-2 được xây dựng từ bảng 11 chữ cái, số từ A là: 11n-2
M được lập bằng cách: chọn 2 ký tự bất kỳ, đem chèn vào từng vị trí của A.
Số cách chọn 2 ký tự từ 7 chữ cái: 72
, được chèn vào n-1 vị trí trong từ A.
Số từ có độ dài n mà trong đó có hai ký tự kề nhau: 72
(n-1). 11n-2
Vậy số từ có độ dài n mà trong đó không có hai ký tự kề nhau là:
11n
– (72
(n-1). 11n-2
)
c. Có bao nhiêu từ có độ dài n được xây dựng từ bảng chữ cái trên mà trong từ
đó luôn xuất hiện ít nhất 1 chữ số và một ký tự (n>1).
Gọi X là số từ có độ dài n chỉ có chữ số: X= 4n
Y là số từ có độ dài n chỉ có ký tự: Y= 7n
Vậy số từ thỏa mãn đề bài là: 11n
– 4n
– 7n

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 18
Bài 23. (Đề thi cao học Đà Nẵng – 10/2010)
Cho X={0..15}. Chứng tỏ rằng nếu S là một tập con gồm 9 phần tử của X thì có
ít nhất 2 phần tử của S có tổng bằng 15.
Phân hoạch X thành 8 tập con, mỗi tập con đều có tổng bằng 15, như sau:
{0,15}, {1,14}, {2,13}, {3,12}, {4,11}, {5,10}, {6,9}, {7,8}
Phân 9 phần tử của S vào 8 tập con trên. Theo nguyên lý Dirichlet, có 2 phần tử
của S thuộc một tập nào đó, mà tổng 2 phần tử này sẽ bằng 15.
Bài 24. (Đề thi cao học Đà Nẵng – 3/2011)
Trong mặt phẳng cho 6 điểm phân biệt nối nhau từng đôi một bởi các đoạn
thẳng màu xanh hoặc đỏ. Chứng tỏ rằng có 3 điểm nối nhau bởi các đoạn thẳng
cùng màu.
Gọi A, B, C, D, E, F là 6 điểm phân biệt nằm trong một mặt phẳng.
Giả sử ta chọn điểm A, nối điểm A với 5 điểm còn lại B, C, D, E, F bởi các đoạn
thẳng màu xanh hoặc đỏ.
+ Ngược lại, tam giác BCD không có cạnh màu đỏ, thì tam giác này phải màu
xanh.
Vậy luôn luôn tồn tại 3 điểm nối với nhau từng đôi 1 bởi các đoạn thẳng cùng màu
A
B
C
D
E
F
Giả sử ta chọn điểm A, nối điểm A với 5 điểm
còn lại B, C, D, E, F bởi các đoạn thẳng màu
xanh hoặc đỏ.
Theo nguyên lý Dirichlet phải có 3 đoạn thẳng
cùng màu xanh hoặc đỏ. Giả sử là 3 đoạn
thẳng AB, AC và AD có màu đỏ (như hình
vẽ).
+ Nếu trong tam giác BCD có cạnh màu đỏ,
giả sử là cạnh BC, thì tam giác ABC là tam
giác có các cạnh màu đỏ (hay 3 điểm nối nhau
cùng màu).

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 19
Bài 25. Một võ sĩ quyền anh thi đấu giành chức vô địch trong 75 giờ. Mỗi giờ
đấu ít nhất một trận, nhưng toàn bộ không quá 125 trận. Chứng tỏ rằng có
những giờ liên tiếp đã đấu 24 trận.
Gọi ai là số trận đấu cho đến hết giờ thứ i (i=1..75) của võ sĩ quyền anh.
Ta có : 1 a1 < a2 …< a75 125. (1)
25 a1 +24 < a2+24 …< a75+24 149. (2)
Như vậy ta có 150 số trong 2 dãy (1) và (2) nhận giá trị trong {1..149}.
Theo nguyên lý Dirichlet phải có 2 hai số bằng nhau. Vì 2 dãy trên là dãy tăng, nên
hai số bằng nhau thuộc 2 dãy khác nhau. Hay, ta có: ai+24 = aj aj – ai =24. Như
vậy, từ giờ i đến hết giờ j võ sĩ đã thi đấu 24 trận.
Bài 26. (Đề thi cao học Đà Nẵng – 8/2009)
a. Một mạng máy tính có n (n>1) máy tính. Mỗi máy tính được nối trực tiếp
hoặc không nối với các máy khác. CMR có ít nhất hai máy tính mà số các máy
tính khác nối với chúng là bằng nhau.
Gọi q1, q2, q3, … qn là số máy tính kết nối với máy 1, 2, 3 .. n.
Như vậy ta có: 0 qi n-1 i=1..n
Tuy nhiên, không thể xảy ra đồng thời: có 1 máy không kết nối với máy nào cả, tức
là qi=0 và có một máy kết nối với tất cả các máy còn lại (qj=n-1). Vậy chỉ xảy ra 1
trong hai trường hợp sau:
0 qi n-2 i=1..n
1 qi n-1 i=1..n
Cả hai trường hợp trên n có qi nhận n-1 giá trị. Theo nguyên lý Dirichlet, có i j sao
cho qi=qj. Hay có ít nhất 2 trong số n máy tính có số máy kết nối với chúng bằng
nhau.
b. Trong một mặt phẳng có 17 điểm phân biệt được nối với nhau từng đôi một
bởi các đoạn thẳng màu xanh, hoặc màu đỏ, hoặc màu vàng. CMR luôn tồn tại
ba điểm nối với nhau bởi các đoạn thẳng cùng màu
Chọn 1 điểm bất kỳ, giả sử là P, từ P ta nối với 16 điểm còn lại bởi các đoạn thẳng
là màu xanh, hoặc màu đỏ, hoặc màu vàng.
Theo nguyên lý Dirichlet, trong 16 đoạn thẳng này sẽ có 6 đoạn thẳng có cùng
màu. Giả sử 6 đoạn thẳng đó nối P với 6 điểm A, B, C, D, E, F có 2 trường hợp:

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 20
+ Sáu điểm A, B, C, D, E, F được nối với nhau từng đôi một bởi các đoạn thẳng,
trong đó có ít nhất 1 đoạn thẳng có màu đỏ. Khi đó, đoạn thẳng màu đỏ này cùng
với điểm P tạo thành 3 điểm nối với nhau bởi các đoạn thẳng có màu đỏ.
+ Sáu điểm A, B, C, D, E, F được nối với nhau từng đôi một bởi các đoạn thẳng
không có màu đỏ, tức là các đoạn thẳng này có màu xanh hoặc vàng. Khi đó, chọn
điểm bất kỳ (chẳng hạn điểm A) nối với 5 điểm còn lại bởi các đoạn thẳng màu
xanh hoặc vàng. Theo nguyên lý Dirichlet, tồn tại ít nhất 3 trong 5 đoạn thẳng có
cùng màu, giả sử đó là màu xanh. Giả sử đó là các cạnh AB, AC và AD. Nếu có ít
nhất một trong 3 đoạn thẳng BC, CD và DB có màu xanh thì cùng với điểm A tạo
thành 3 điểm được nối với bởi màu xanh. Ngược lại, thì B, C, D là điểm được nối
với nhau bởi màu vàng.
Như vậy, luôn tồn tại ba điểm nối với nhau bởi các đoạn thẳng cùng màu
Bài 27. Trong mặt phẳng xOy lấy ngẫu nhiên 5 điểm tọa độ nguyên. Chứng tỏ
rằng có ít nhất một trung điểm của các đoạn nối chúng có tọa độ nguyên.
Giả sử trong mặt phẳng xOy có A(x1,y1), B(x2,y2). Vậy trung điểm của đoạn
thẳng AB sẽ là:
2
21
,
2
21 yyxx
. Các tọa độ này nguyên khi:
(x1,x2) đều chẵn hoặc đều lẻ, (y1,y2) đều chẵn hoặc đều lẻ.
Vì có 4 bộ bao gồm 2 phần tử có tính chẵn lẻ với nhau. Nên theo nguyên lý
Dirichlet thì trong 5 điểm sẽ có ít nhất 2 điểm có tính chẵn lẻ như nhau. Do dó,
trung điểm của 2 điểm này sẽ có tọa độ nguyên.
Bài 28. Cho trước các tập hợp gồm các phần tử xác định nào đó.
a. Hãy cho biết các cách mô tả, hay biểu diễn một tập hợp? Cho ví dụ.
+ Nếu A là một tập hợp gồm một số hữu hạn phần tử, để biểu diễn tập A, ta có thể
liệt kê hết các phần tử của A.
– Ví dụ biểu diễn A là tập hợp 4 chữ cái hoa đầu tiên: A={‘A’,’B’,’C’,’D’}
+ Nếu A là một tập hợp vô hạn các phần tử, để biểu diễn tập A, ta dùng cách biểu
diễn tính chất của các phần tử, có dạng:
A={x P(x)} là tập hợp các phần tử x, sao cho x thỏa mãn tính chất P

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 21
– Ví dụ biểu diễn A là tập hợp các số thực: A={x x R}
b. Hãy cho biết thế nào là một tập hợp đếm được, một tập hợp không đếm được?
Cho ví dụ.
+ Nếu A là một tập hợp có hữu hạn phần tử, thì tập A được gọi là tập đếm được.
Ví dụ: A={1, 2, 3, 4, 5, 6, 7, 8, 9}, A là tập đếm được vì nó có 9 phần tử, từ 1 đến 9
+ Nếu A là một tập hợp có vô hạn phần tử, thì tập A có thể là tập đếm được hoặc
không đếm được. Để xác định A có đếm được hay không ta chỉ cần xây dựng song
ánh giữa tập A với tập các số tự nhiên N.
Ví dụ: Cho A là tập hợp các số phức. A là tập vô hạn không đếm được.
c. Cho A là tập không đếm được, B là tập đếm được. Hãy cho biết tập hợp A-B
(hiệu) có đếm được hay không?
Giả sử A-B là tập đếm được, khi đó A=(A-B) B cũng là tập hợp đếm được, vì:
(A-B) : là tập đếm được theo giả thiết.
B : là tập đếm được theo đề bài.
Mâu thuẩn với đề bài đã cho là A là tập không đếm được. Vậy A-B là tập không
đếm được.
d. CMR tích Decac của hai tập hợp vô hạn đếm được cũng là một tập vô hạn
đếm được?
Tích Decac AxB là tập tất cả các cặp phần tử có trật tự sắp xếp (a,b) được tạo ra
bởi một phần tử a A với các phần tử đứng kế tiếp b B.
Giả sử A={ai, i=1..n}; B={bj, j=1..n}
Ta xây dựng một (bảng) ma trận hai chiều, đầu mỗi hàng là một phần tử của A, đầu
mỗi cột là phần tử của B. Khi đó, các phần tử của tích Decac AxB là các phần tử
của ma trận.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 22
b1 b2 … bn
a1 a1b1 a1b2 .. a1bn
a2 a2b1 a2b2 … a1bn
… .. .. .. ..
an anb1 anb2 … anbn
Từ ma trận trên ta suy ra AxB là đếm được.
Bài 29. (Đề thi cao học Đà Nẵng – 5/2007)
Cho dãy u = <a1, a2, …, an> trong đó ai là các ký tự tùy ý, i 1..n, n là độ dài của
dãy u đã cho. Một dãy v = <b1, b2, …, bm> được gọi là dãy con của dãy u nếu tìm
được dãy các chỉ số 1 i1 < i2 < … < im n và bk=aik với mọi k 1..m.
Chẳng hạn dãy v = < B, C, D, B> là dãy con của dãy u = < A, B, C, B, D, A, B>
với dãy chỉ số là <2, 3, 5, 7>.
Một dãy w được gọi là dãy con chung của hai dãy u và v đã cho, nếu w vừa là dãy
con của u và vừa là dãy con của v. Một dãy con chung được gọi là lớn nhất nếu có
độ dài lớn nhất trong số các dãy con của các dãy đã cho.
Chẳng hạn, các dãy <A, B, B, C> và <B, D, A, B> đều là dãy con chung lớn nhất
của hai dãy <A, B, C, B, D, A, B> và <B, D, C, A, B, A>.
Gọi C(i,j) là độ dài của một dãy con chung lớn nhất của hai dãy X= <a1, a2, …
an> và Y= <b1, b2, … bm> (0 i n, 0 j m). Người ta tìm được công thức đệ quy
tính C(i,j) như sau:

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 23
a, Hãy giải thích công thức đệ quy trên:
– Nếu i=0 hoặc j=0 thì C[i,j] = 0.
– Nếu i>0, j>0:
+ Nếu Xi = Yj thì dãy con chung dài nhất của Xi và Yj sẽ thu được bằng việc
bổ sung Xi vào dãy con chung dài nhất của hai dãy Xi-1và Yj-1
+ Nếu Xi Yj thì dãy con chung dài nhất của Xi và Yj sẽ là dãy con dài nhất
trong hai dãy con chung dài nhất của (Xi và Yi-1) và của (Xi-1 và Yj).
b, Viết hàm RecMaxSubSeq dùng phương pháp lặp tính độ dài dãy con chung
lớn nhất của hai dãy trên.
Type Mang= array[1..50,1..50] of byte;
Function RecMaxSubSeq (X,Y,m,n): Mang;
Var i,j: Byte; C: Mang;
Begin
for i :=1 to n do c[i,0]:=0;
for j: =1 to m do c[0,j]:=0;
for i: =1 to n do
for j: = 1to m do
if x[i] = y[i] then
c[i,j]:=c[i-1,j-1]+1
else if c [i-1,j] c[i,j-1] then
c[i,j]:=c[i-1,j]
else c[i,j]:=c[i,j-1];
RecMaxSubSeq :=C;
End;

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 24
Kỹ thuật đếm nâng cao
Bài 1. Cho dãy số {an} thỏa mãn hệ thức truy hồi:
an = 5an-1 – 6an-2 ; a0=0 và a1=1.
a. Giải hệ thức truy hồi trên.
Ta có phương trình đặt trưng : x2
= 5x – 6 x2
– 5x + 6 =0
có 2 nghiệm phân biệt : x1 = 3 và x2 = 2
Hệ thức truy hồi có dạng: an = b3n
+ d2n
(1)
Với a0=0, a1=1thay lần lượt vào (1), ta có hệ phương trình sau:
b + d =0
3b + 2d = 1
=> b = 1, d = -1
Vậy hệ thức truy hồi là : an = 3n
– 2n
b. Viết hàm A(n) để tính an
Function A(n: integer): Integer;
Begin
If n=0 then A:=0
Else if n=1 then A:=1
Else
A:=5*A(n-1) – 6*A(n-2);
End;
Bài 2. Giải hệ thức truy hồi an = 6an-1 – 9an-2 ; a0=1, a1=6
Ta có phương trình đặt trưng : x2
= 6x – 9 x2
– 6x + 9 =0
PT có nghiệm kép : x = 3
Hệ thức truy hồi có dạng: an = b3n
+ d.n.3n
Thay a0=1 và a1=6, ta có hệ phương trình :
633
1
db
b
=> b = 1, d = 1
Vậy hệ thức truy hồi là : an = 3n
+ n3n
= (1+n) 3n

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 25
Bài 3. Giải hệ thức truy hồi an = 2an-1 + 5an-2 – 6an-3; a0=0, a1=-4 và a2=8
Ta có phương trình đặt trưng : x3
=2×2
+5×2
-6
x3
– 2×2
-5x+ 6 =0
(x-1)(x2
– x – 6) = 0
có 3 nghiệm phân biệt : x1 = 1 ; x2 = 3 ; x3 = -2
Hệ thức truy hồi có dạng: an = b + d.3n
+ c.(-2)n
Thay a0 = 0, a1=-4, a2 = 8, ta có hệ phương trinh :
849
423
0
cdb
cdb
cdb
=> b = -24/15, d = 1/5, c=22/15
Vậy :
n
n
na )2(
15
22
5
3
15
24
Bài 4. (Đề thi cao học ĐH KHTN TP HCM 2010)
a.Tìm nghiệm tổng quát của hệ thức đệ qui: an = an-1 + 6an-2
Phương trình đặc trưng là: x2
= x + 6 x2
– x – 6 = 0
Phương trình có 2 nghiệm phân biệt: x1 = -2 và x2 = 3.
Nên nghiệm tổng quát là: an = c(-2)n
+ d3n
b. Tìm nghiệm thỏa điều kiện đầu a0 = 8, a1 = 5 của hệ thức đệ qui: an = an-1 +
6an-2 + 10n(-2)n
– 3(-2)n-1
Đặt fn = 10n(-2)n
– 3(-2)n-1
= (-2)n
(10n + 3/2).
Vì -2 là 1 nghiệm của phương trình đặc trưng nên nghiệm riêng có dạng:
n(-2)n
(An + B). (*)
Thế (*) vào hệ thức ban đầu, ta có:
n(-2)n
(An + B) = (n-1)(-2)n-1
(A(n-1) + B) + 6(n-2)(-2)n-2
(A(n-2) + B) + (-2)n
(10n +
3/2) (**).

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 26
Thế n = 2 vào (**), ta có: 2(-2)2
(2A + B) = (-2)(A + B) + (-2)2
(10.2 + 3/2)
⇔ 16A + 8B = -2A – 2B + 86
⇔ 18A + 10B = 86
⇔ 9A + 5B = 43 (***)
Thế n = 1 vào (**), ta có:
(-2)(A + B) = 6(-1)(-2)-1(B – A) + (-2)(10 + 3/2)
⇔ -2A – 2B = 3B – 3A – 23
⇔ A – 5B = -23 (****)
Từ (***) và (****) ta có hệ phương trình:
23-=5B-A
43=5B+9A
=> A = 2 và B = 5
Vậy nghiệm tổng quát của hệ thức là: an = b(-2)n
+ c3n
+ n(-2)n
(2n + 5)
Với a0 = 8, ta có:
8 = b(-2)0
+ c30
+ 0(-2)0
(2.0 + 5)
⇔ b + c = 8 (1)
Với a1 = 5, ta có:
5 = b(-2)1
+ c31
+ 1(-2)1
(2.1 + 5)
⇔ -2b + 3c = 19 (2)
Từ (1) và (2) ta có hệ phương trình:
19=3c+2b-
8=c+b
=> b = 1 và c = 7.
Vậy nghiệm của hệ thức đệ qui là: an = (-2)n
+ 7.3n
+ n(-2)n
(2n + 5)

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 27
Bài 5. Gọi an là số dãy bit độ dài n không có 2 bit 0 liền nhau.
a. Tìm hệ thức truy hồi cho an
Dãy bit độ dài n không có 2 bit 0 liền nhau có 1 trong 2 dạng :
– A1 : A có n-1 bit và không có 2 bit 0 liền nhau.
Có a(n-1) trường hợp
– B10: B có n-2 bit và không có 2 bit 0 liền nhau.
Có a(n-2) trường hợp
Vậy hệ thức truy hồi : an = a(n-1) + a(n-2)
b. Biết giá trị đầu a1=2, a2=3, giải hệ thức truy hồi trên
Phương trình đặc trưng: x2
= x + 1 x2
– x -1 = 0
Phương trình có 2 nghiệm riêng biệt là:
2
51
2,
2
51
1 xx
Vậy an có dạng:
nn
n dba )
2
51
()
2
51
( (1)
Theo hệ thức truy hồi, ta có : a2 = a1 +a0 => a0 = a2 – a1 = 1
Với a0=1 và a1=2, ta có hệ phương trình:
2)
2
51
()
2
51
(
1
db
db
)
2
51
(
5
1
),
2
51
(
5
1
db
Vậy:
11
2
51
5
1
2
51
5
1
nn
nF
c. Tìm hệ thức truy hồi cho số các xâu nhị phân chứa xâu 00
Gọi Sn là số chuỗi nhị phân độ dài n (n 2) có 2 bit 0 n sẽ có một
trong các dạng sau:
A1: – , số chuỗi là: S(n-1)
B10: B -2 , số chuỗi là: S(n-2)

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 28
C00: C tùy ý có độ dài n-2, số chuỗi là: 2(n-2)
Ta có công thức truy hồi: Sn=S(n-1)+S(n-2)+ 2(n-2)
Bài 6. (Đề thi cao học Đà Nẵng – 9/2010)
Cho biết dân số của Việt Nam năm 2007 là 86 triệu người. Giả sử tốc độ tăng
dân số hằng năm là 0,2% mỗi năm. Gọi Dn là dân số của Việt Nam n năm sau
2007
a. Lập hệ thức truy hồi tính Dn.
Gọi:
D0 là tổng dân số Việt Nam năm 2007, D0 = 86 triệu người
D1 là tổng dân số Việt Nam năm 2008 :
D1 = D0 + 0,002.D0=1,002.D0
…………………………..
Dn là tổng dân số Việt Nam n năm sau năm 2007
Dn = Dn-1 + 0,002Dn-1 = 1,002.Dn-1
b. Dân số Việt Nam năm 2020 là bao nhiêu?
Thế lần lượt Dn-1 = 1,002.Dn-2 vào Dn
Dn-2 = 1,002Dn-3 vào Dn-1
……..
Cuối cùng ta có : Dn = (1,002)n
.D0 = 86.(1,002)n
triệu người.
Theo đề bài, ta có: n = 2020 – 2007 = 13
Như vậy sau 13 năm dân số Việt Nam là:
D13 =86.(1,002)13
triệu người.
Bài 7. Giả sử lãi suất ngân hàng là 2% một năm. Tính tổng số tiền có trong tài
khoản sau 10 năm, nếu tiền gửi ban đầu tài 10 triệu.
P0 là số tiền ban đầu : P0 = 10 triệu
P1 là tổng số tiền sau 1 năm gửi: P1 = P0 + 0,02P0 = 1,02P0
P2 là tổng số tiền sau 2 năm gửi: P2 = P1 + 0,02P1 =1,02P1
= 1,02 . 1,02 P0 = (1,02)2
P0

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 29
…..
Pn là tổng số tiền sau n năm gửi: Pn = Pn-1 + 1,02Pn-1
….
= (1,02)n
P0
Với n=10, ta có: P10 = (1,02)10
P0 = (1,02)10
.10 = 12,189 triệu đồng.
Bài 8. Tìm hệ thức truy hồi và điều kiện đầu để tính số chuỗi nhị phân độ dài n
có 4 bít 0 liên tiếp. Ứng dụng tính số chuỗi với n=8.
Gọi Sn là số chuỗi nhị phân độ dài n (n 4) có 4 bit 0 liên tiếp. Sn sẽ có một trong
các dạng sau:
A1: Trong đó A chứa 4 bit 0 liên tục, số chuỗi là: S(n-1)
B10: B chứa 4 bít 0 liên tục, số chuỗi là: S(n-2)
C100: C chứa 4 bít 0 liên tục, số chuỗi là: S(n-3)
D1000: D chứa 4 bít 0 liên tục, số chuỗi là: S(n-4)
E0000: E tùy ý có độ dài n-4, số chuỗi là 2(n-4)
Ta có công thức truy hồi: Sn=S(n-1)+S(n-2)+S(n-3)+S(n-4)+2(n-4)
Điều kiện đầu là:
S1=S2=S3=0; S4=1 (Nghĩa là, với n=1, 2, 3 không có chuỗi nào, n=4 có duy nhất
1 chuỗi, đó là: 0000).
Dùng phương pháp thế để giải, như sau:
s5 = s4+s3+s2+s1+2 = 1+0+0+0+2 = 3 (chuỗi độ dài 5 có 3 trường hợp 0000
kề nhau: 00000, 10000, 00001)
s6 = s5 + s4 + s3 + s2 + 22
= 3 + 1 + 0 +0+4 = 8
s7 = s6 + s5 + s4 + s3 + 23
= 8 + 3 + 1+0 + 8 = 20
s8 = s7 + s6 + s5 + s4 + 24
= 20 + 8 + 3 + 1 + 16 = 48
Vậy có 48 chuỗi nhị phân có độ dài 8 chứa 4 bits 0 kề nhau.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 30
Bài 9. Tìm HTTH mà Rn thỏa mãn, trong đó Rn là số miền của mặt phẳng
bịphân chia bởi n đường thẳng nếu không có hai đường nào song song và
không có 3 đường nào cùng đi qua 1 điểm.
– Nếu không có đường thẳng nào, tức n=0 thì có 1 mặt phẳng: Rn = 1.
– Nếu có 1 đường thẳng, tức n=1 thì nó chia mặt phẳng thành 2: Rn =2.
– Nếu n > 1, giả sử n-1 đường thẳng chia mặt phẳng thành Rn-1 miền.
Theo đề bài không có 2 đường thẳng nào song song với nhau, nên đường thẳng thứ
n sẽ cắt n-1 đường thẳng còn lại tại n-1 giao điểm.
Vì không có 3 đường thẳng đi qua một 1 điểm, nên n-1 giao điểm trên khác nhau
từng đôi một và chúng tạo ra n-2 đoạn và 2 nửa đoạn trên đường thẳng thứ n.
Mỗi đoạn và nửa đoạn này chia miền mà nó đi qua thành 2 miền mới, nghĩa là làm
tăng thêm 1 miền. Do đó đường thẳng thứ n làm tăng thêm (n-2) + 2 = n miền.
Vậy HTTH là: Rn = Rn-1 + n.
Bài 10. Viết HTTH của cos(nx) và sin(nx)
sin(nx) = 2sin((n − 1)x)cos(x) − sin((n − 2)x)
cos(nx) = 2cos((n − 1)x)cos(x) − cos((n − 2)x)

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 31
Logic mệnh đề
Bài 1. Viết bảng giá trị chân lý của các phép toán mệnh đề
Bài 2. Hãy nêu các công thức trong logic mệnh đề

Bài Hay  Bài 3: Phán đoán phức và hình thức logic của phán đoán

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 32
Bài 3. Chứng minh
a. rqprpqp )()(
)()()()( rpqprpqp (Đ/n )
))()(()( rprpqp (Luật De Morgan và Đ/n )
))()(()( rprppq (Luật De Morgan và giao hoán)
))()((( rprppq (Luật kết hợp)
)))(())((( rpprppq (Luật phân phối)
))))(())((( rpprppq (Luật kết hợp)
))()(( rprTq (Luật bù)
))(( rpTq (Luật nuốt)
)( rpq ( Luật đồng nhất)
rqp ( Luật giao hoán)
b. )()]([)( pqqrqqp
)]()[()()]([)( qqrqqpqrqqp
])[()( qrqqp
])[()( qTrqp
][)( qTqp
qqp )(
qqqp
Fqp
qp
qp

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 33
c. 1)]()[( qpqpp
qpqqpqpp )](0[)]()[( (Luật đúng sai)
qpq )( (Luật đồng nhất)
qpq )( (Đ/n )
qpq )( (Luật De Morgan)
pqq )( (Luật kết hợp)
p1 (Luật đúng sai)
1 (Luật trội)
Bài 4. Viết biểu thức mệnh đề của:
a. Bạn không được phép lái xe máy nếu bạn chưa cao đến 1,5m, trừ khi bạn đủ
18 tuổi và có giấy phép lái xe.
Ta đặt các biến mệnh đề: p : Bạn được phép lái xe máy.
q : Bạn cao dưới 1,5 m
r : Bạn đủ 18 tuổi.
s : Bạn có giấy phép lái xe.
q r s p
Hoặc : q r s p.
b. Đặt P, Q lần lượt là các mệnh đề:
P := “ Minh học chăm”, Q:= “ Minh có kết quả học tập tốt”
Hãy viết lại các mệnh đề sau dưới dạng hình thức trong đó có sử dụng các phép
nối.
* Minh học chăm và có kết quả học tập tốt: QP
* Minh học chăm hay Minh có kết quả học tập tốt: QP
* Nếu Minh học chăm thì Minh có kết quả học tập tốt: QP
* Minh có kết quả học tập tốt khi và chỉ khi Minh học chăm: PQ
Bài 5. (Đề thi cao học ĐHSP HN – 2006)
a. Cho trước mệnh đề logic
F = (P (R Q)) ( P (Q (R P))),
Trong đó P, Q, R là ba mệnh đề logic và là phép phủ định.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 34
– Khử phép kéo theo và rút gọn mệnh đề F.
F = (P (R Q)) ( P (Q (R P)))
= ( P (R Q)) ( P (Q (R P)))
= ( P (R Q)) ( ( P Q ) ( P (R P)))
= P (R Q) ( P Q ) ( P P=F (Luật đúng), F R=F (Luật trội))
= P ( P Q ) (R Q) (Luật giao hoán).
= P (T (T Q ) (R Q)
= P (R Q)
– Tìm dạng chuẩn hội chính tắc của mệnh đề F.
Ta có : )( QRPF
)( QRP (Luật bù kép)
)( QRP (Luật De Morgan)
)( QRP (Luật De Morgan)
)()( QPRP (Luật phân phối)
)()( QPRP (Luật De Morgan)
)()( QPRP (Luật De Morgan)
b. Biết rằng mệnh đề P(x,y) được phát biểu là “x + y = 0”, với x, y là các số thực.
hãy cho biết chân trị của các mệnh đề dưới đây và giải thích tại sao?
*. x y P(x,y)
Mệnh đề x y P(x,y) luôn luôn có giá trị đúng (True), vì với mọi x, luôn tồn
tại một giá trị y=-x, làm cho biểu thức x+y=0, ví dụ: P(1,-1), P(2,-2)…
*. x y P(x,y)
Mệnh đề x y P(x,y) luôn luôn có giá trị sai (False), vì không có giá trị nào
của y làm cho biểu thức x+y=0 với mọi x.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 35
Bài 6. Dùng bảng chân trị chứng minh rằng : CBACBA
A B C CBA CBA A B C CBA
0 0 0 0 1 1 1 1 1
0 0 1 1 0 1 1 0 0
0 1 0 1 0 1 0 1 0
0 1 1 1 0 1 0 0 0
1 0 0 1 0 0 1 1 0
1 0 1 1 0 0 1 0 0
1 1 0 1 0 0 0 1 0
1 1 1 1 0 0 0 0 0
Bài 7.Trình bày các quy tắc suy diễn trong logic mệnh đề

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 36
Bài 8.Viết suy luận của phát biểu sau:
Ông Minh đã khẳng định rằng nếu không được tăng lương thì ông sẽ nghỉ việc.
Mặt khác nếu ông ta nghỉ việc và vợ ông ta bị mất việc thì phải bán xe. Biết rằng
nếu vợ ông Minh hay đi làm trễ thì sẽ mất việc. Cuối cùng ông đã được tăng
lương. Vậy suy ra nếu ông Minh không bán xe thì vợ ông không đi làm trễ.
Ta đặt các biến mệnh đề như sau:
q: Ông Minh được tăng lương; r: Ông Minh nghỉ việc
s: Vợ ông Minh mất việc; t: Ông Minh phải bán xe.
p: Vợ ông Minh hay đi làm trễ.
Suy luận trên được viết lại như sau:
q r
(r s) t
p s
q
—————-
t p
Bài 9. (Đề thi cao học Đà Nẵng – 2/2009)
a. Suy luận sau đúng hay sai: Nếu bò sữa nhiều và sữa tốt thì sẽ được cho ăn
thêm nhiều cỏ non. Bò ăn thêm nhiều cỏ non thì sẽ mập lên. Nhưng thực tế bò
không mập lên. Kết luận bò không cho nhiều sữa hoặc không cho sữa tốt.
Ta đặt các biến mệnh đề như sau:
q: bò cho sữa nhiều.
r: bò cho sữa tốt.
p: bò được cho ăn thêm nhiều cỏ non.
s: bò mập lên.
Suy luận được viết lại như sau:
q r p (1)
p s (2)
s (3)
——————–
q r

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 37
q r s (4) (Tam đoạn luận 1 và 2)
s (5) (Tiền đề)
rq (Do 4, 5 và luật phủ định)
q r (Luật De Morgan )
Vậy suy luận trên là đúng.
b. Cho biết biểu thức nào trong số các biểu thức sau đây là đồng nhất đúng
1. pqr p+q là đồng nhất đúng:
p q r pqr p+q pqr p+q
0 0 0 0 0 1
0 0 1 0 0 1
0 1 0 0 1 1
0 1 1 0 1 1
1 0 0 0 1 1
1 0 1 0 1 1
1 1 0 0 1 1
1 1 1 1 1 1
2. (p q(q r)) (p r) là đồng nhất đúng:
p q r q r q(q r)
p q(q r)) p r (p q(q r))
(p r)
0 0 0 1 0 1 1 1
0 0 1 1 0 1 1 1
0 1 0 0 0 1 1 1
0 1 1 1 1 1 1 1
1 0 0 1 0 0 0 1
1 0 1 1 0 0 1 1
1 1 0 0 0 0 0 1
1 1 1 1 1 1 1 1
3. (p q) p không đồng nhất đúng:
p q p q (p q) p
0 0 1 0
0 1 1 0

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 38
1 0 0 1
1 1 1 1
4. (p (q+r)) (q pr) không đồng nhất đúng:
p q r q+r
p
(q+r)
q pr q pr (p (q+r))
(q pr)
0 0 0 0 1 1 0 0 0
0 0 1 1 0 1 0 0 1
0 1 0 1 0 0 0 1 1
0 1 1 1 0 0 0 1 1
1 0 0 0 0 1 0 0 1
1 0 1 1 1 1 1 1 1
1 1 0 1 1 0 0 1 1
1 1 1 1 1 0 1 1 1
c. Tìm giá trị các biến Boole x và y thỏa mãn phương trình xy = x + y
x y xy x + y
0 0 0 0
1 1 1 1
Bài 10. Hãy kiểm tra các suy luận sau và cho biết đã sử dụng quy tắc suy diễn
nào?
c,
a. ((p q) q) p (Quy tắc phủ định)
r p (r p) (De Morgan)

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 39
b. r q q r (Luật phản đảo)
p r (Luật tam đoạn)
p r (Đ/n )
p (Luật rút gọn)
c. t u (1)
r (s t) (2)
( p q ) r (3)
(s u ) (4)
______________
p
s u ( Do tiền đề (4) và luật De Morgan ) (5)
u (Do (5) và luật đơn giản nối liền) (6)
t (Do (1), (6) và luật phủ định) (7)
s (Do (5) và luật đơn giản nối liền) (8)
t s (Do (7), (8) và phép nối liền) (9)
(s t) (Do (9) và luật De Morgan) (10)
r (Do (2), (10) và luật phủ định) (11)
( p q) (Do (3), (11) và luật phủ định) (12)
p q (Do (12) và luật De Morgan) (13)
p (Do (13) và luật đơn giản nối liền)

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 40
Đại số Boole
Bài 1. Trình bày các tính chất của các phép toán Boole
1. Tính giao hoán: a.b = b.a
a+b = b+a.
2. Tính kết hợp: (a.b).c = a.(b.c)
(a+b)+c = a+(b+c).
3. Tính phân phối: a.(b+c) = (a.b)+(a.c)
a+(b.c) = (a+b).(a+c).
4. Tính đồng nhất: a.1 = 1.a = a
a+0 = 0+a = a.
5. Tính bù: 0.. aaaa
0aaaa
6. Tính nuốt a.0 = 0
a+1 = 1
7. Tính luỹ đẳng a.a = a
a+a = a.
8. Hệ thức De Morgan baab
baba
9. Tính bù kép aa
10. Tính hút a.(a+b) = a
a+(a.b) = a.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 41
Bài 2. Tối thiểu hàm Bool bằng bảng Karnaugh
a) zyxyzxzyxzxyzyxF ),,(
Việc nhóm thành các khối cho thấy rằng: Có 2 cặp hình vuông kề nhau, cặp ngang
biểu diễn cho zx , cặp đứng biểu diễn cho zy và 1 hình vuông cô lập biểu diễn
cho yzx ; vì vậy: zx , zy và yzx là các nguyên nhân nguyên tố của F(x,y,z). Do
đó, ta có hàm tuyển chuẩn tắc tối thiểu là:
yzxzyzxzyxF ),,(
zxyzyxF ),,(
zyxzyxF ),,(

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 42
Bài 3. (Đề thi cao học Đà Nẵng – 8/2008)
a. Tìm các giá trị của hàm Boole được biểu diễn:
zxyzyxF ),,(
x y z z xy zxy
0 0 0 1 0 1
0 0 1 0 0 0
0 1 0 1 0 1
0 1 1 0 0 0
1 0 0 1 0 1
1 0 1 0 0 0
1 1 0 1 1 1
1 1 1 0 1 1
b. Tối thiểu hàm Boole
yxyxyxyxF ),(
yxyyxyyxxxy 1.)(
yx
c. Tối thiểu hóa hàm Boole bằng bảng Karnaugh :
zyxyzxzyxzxyyxF ),(
yz zy zy zy
x 1 1
x 1 1
zxzxyxF ),(

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 43
Bài 4: Tìm dạng chuẩn tắc của hàm
zyxzyxF )(),,(
Ta lập bảng giá trị của hàm F như sau:
x y z z x+y zyx )(
0 0 0 1 0 0
0 0 1 0 0 0
0 1 0 1 1 1
0 1 1 0 1 0
1 0 0 1 1 1
1 0 1 0 1 0
1 1 0 1 1 1
1 1 1 0 1 0
Ta thấy F(x,y,z) bằng 1 khi :
x=0, y=1, z=0
hoặc x=1, y=0, z=0
hoặc x=1, y=1, z=0
Vậy dạng chuẩn tắc của hàm F :
zxyzyxzyxzyxF ),,(
Bài 5: Vẽ mạch logic của các hàm sau:
a. xyxyxF )(),(
b. zyxzyxyxF )(),(

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 44
Bài 6.
a, Dạng tuyển đầy đủ của F
Tập các thể hiện làm cho giá trị của F(x,y,z) bằng 1 là: {000, 010, 100, 110, 111}.
Từ tập các thể hiện này ta lập các từ tối thiểu tương ứng : zyx , zyx , zyx , zxy ,
xyz. Như vậy, dạng tuyển chuẩn tắc đầy đủ của F như sau:
F(x,y,z) = zyx + zyx + zyx + zxy + xyz
b, Dạng chuẩn tắc tối thiểu
F(x,y,z) = zyx + zyx + zyx + zxy + xyz
= zx ( y + y ) + zx ( y + y ) + xyz
= zx + zx + xyz
= ( x + x ) z + xyz
= z + xyz
Bài 7.
a, Dạng tuyển đầy đủ của F
Tập các thể hiện làm cho giá trị của F(w,x,y,z) bằng 1 là: {1111, 1101, 1100,
1010, 1000, 0110, 0101, 0100, 0010}. Từ tập các thể hiện này ta lập các từ tối
thiểu tương ứng : wxyz, zywx , zywx , zyxw , zyxw , zxyw , zyxw , zyxw , zyxw . Như
vậy, dạng tuyển chuẩn tắc đầy đủ của F như sau:
F(x,y,z) = wxyz + zywx + zywx + zyxw + zyxw + zxyw + zyxw + zyxw + zyxw
b, Dạng chuẩn tắc tối thiểu
F(x,y,z) = wxyz + zywx + zywx + zyxw + zyxw + zxyw + zyxw + zyxw + zyxw
= wxz( y + y ) + zwx ( y + y ) + zyxw + z ( xyw + yxw ) + yxw (z + z )

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 45
= wxz + zwx + zyxw + z ( yw ( x + x )) + yxw
= wx( z + z ) + zyxw + zyw + yxw
= wx + zyxw + zyw + yxw
Bài 8. Tìm dạng chuẩn tắc của biểu thức
))(()(),,( zyzxzxyzyxf
= ( zxy )( )( zx + )( zy ) (Luật De Morgan)
= ( zxy )( zx + yz) (Luật De Morgan)
= zyzzzxxyyzzxyx (Luật phân phối)
= zxxzyzxy + 0 (Luật lũy đẳng: x.x = x
Luật bù: 0zz
Luật nuốt 0.x = 0)
= zxzzxy )(
= zxxy (Luật bù 1zz )
Bài 9. Tìm dạng chuẩn tắc đầy đủ của biểu thức
a, zxyzzyxf ),,(
= )()( yyzxxxyz
= zyxzxyyzxxyz
b, zxyxzyxf ),,(
= zxyzzx )(
= zxyzxxz
= yzxxz

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 46
= ))(()()( zxxzyyyzxyyxz
= zyyxxyzzyxzxyzyxxyz
= )()( xxzyzzyxzyxzxyzyxxyz
= zyxzxyzyxyzxzyxzxyzyxxyz
= zyxyzxzyxzyxzxyxyz
Cách khác: Giải bằng lập bảng chân trị của biểu thức
zxyxzyxf ),,(
X Y Z Z’ XZ’ X+Y X+Y+XZ’
0 0 0 1 0 0 0
0 0 1 0 0 0 0
0 1 0 1 0 1 1
0 1 1 0 0 1 1
1 0 0 1 1 1 1
1 0 1 0 0 1 1
1 1 0 1 1 1 1
1 1 1 0 0 1 1
Tập các thể hiện làm cho giá trị của F(x,y,z) bằng 1 là: {010, 011, 100, 101, 110,
111}. Từ tập các thể hiện này ta lập các từ tối thiểu tương ứng : zyx , yzx , zyx ,
zyx , zxy , xyz . Như vậy, dạng tuyển chuẩn tắc đầy đủ của F như sau:
zyxyzxzyxzyxzxyxyzzyxF ),,(
Bài 10. Tìm biểu thức tối thiểu của:
a, xxyyxyxxyE 1.)(1 (Luật bù 1yy )
(Luật đồng nhất x.1=x)
b, )(2 yyxxyyxyxxyE
yxxxyxxyE 1.2
(Luật hấp thụ yxyxx , xxyx , xyxx )( , xyyxx )( )

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 47
c, yxyxyxE4
)( yyxyx
xyx
yx
Bài 11. Tìm biểu thức tối thiểu của:
a, xzyyxzyzxE1
)1()1(1 xyzzyxE
)1()1(1 xyzzyxE
1.1.1 yzxE (Luật nuốt 1 + x = 1)
yzxE1 (Luật đồng nhất 1.x =x)
b, zyxzyxzxyxyzE2
zyxzyxzxy )1(
zvyxzyxxy
zyxzxxy )(
zyxzxy )( (Luật hấp thụ yxyxx )
zyxzyxy
c, zyxyzxzyxzxyxyzE3
)()( yyzxzyxzzxy
zxzyxxy
zxzyyx )(

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 48
zxzyx )(
zxxzxy
zxxxy )(
zxy
d, zyxzyxzxyxyzE3
zyxzyxzzxy )(
zyxzyxxy
zyxzxxy )(
zyxzxy )(
zyxzyxy
zyxzyxy
Bài 12. Tìm biểu thức tối thiểu của:
A, zxywyxwwxyxwE1
)()( zwwxyywwx
)()( zwxyywx
zxyxywyxwx
zxyyxxyxw )(
zxyyxyxw )(
zxyyxywwx

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 49
b, zyxwzyxwzwxywxyzE2
zyxwzyxwzzwxy )(
zyxwzyxwwxy
Bài 13. Cho bảng giá trị
x y z F(x, y, z)
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 1
a. Tìm dạng tuyển chuẩn tắc hoàn toàn (đầy đủ) của f.
Tập các thể hiện làm cho giá trị của F(x,y,z) bằng 1 là: {000, 010, 100, 110, 111}.
Từ tập các thể hiện này ta lập các từ tối thiểu tương ứng : zyx , zyx , zyx , zxy ,
xyz. Như vậy, dạng tuyển chuẩn tắc đầy đủ của F như sau:
xyzzxyzyxzyxzyxzyxF ),,(
b. Tìm dạng tuyển chuẩn tắc thu gọn của f bằng bảng Karnaugh.
yz zy zy zy
x 1 1 1
x 1 1
zxyzyxF ),,(

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 50
Bài 14. (Đề thi cao học ĐH CNTT TP HCM-2010)
a. Tìm công thức dạng chính tắc và công thức tối thiểu của hàm Boole sau:
xyzttxytzxzyxtzytzyxxztzyxtzyxF ),,,(
xyztzztxyyytzxttzyxxxtzytzyxyyxztzyx )()()()()(
xyzttxyztzxytzyxtzyxtzyxtzyxtzyxtzxytzyxzyxxyztzyx
xyzttxyztzxytzyxtzyxtzyxtzyxtzxytzyxttzyxttxyztzyx )()(
xyzttxyztzxytzyxtzyxtzyxtzyxtzxytzyxtzyxztyxtxyzxyzttzyx
txyztzxytzyxtzyxtzyxtzyxtzxytzyxtzyxztyxxyzttzyx
Công thức dạng chính tắc đầy đủ là:
txyztzxytzyxtzyxtzyxtzyxtzxytzyxtzyxztyxxyzttzyxtzyxF ),,,(
Ta dùng bảng Karnaugh để rút gọn hàm F(x,y,z,t) như sau:
yz zy zy zy
tx 1
1
1 1
xt 1
xt 1 1 1
xt 1 1 1 1
Vậy hàm tối thiểu : tyzyxtzyxF ),,,(
b. Vẽ sơ đồ mạng các cổng logic tương ứng với f(x,y,z,t) dựa trên một công
thức đa tối thiểu hóa của hàm Boole f
Ta có: tyzyxtzyxF ),,,(
y
z
t
x
F

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 51
a. ,
= 1.
Xét bảng giá trị x,y,z có 23
= 8 trường hợp sau:
khi x.y=1 :
x = 1
x 1z
z
Dạng tuyển chuẩn tắc đầy đủ của F(x,y,z)
như sau:
zxyxyzzyxF ),,(
:
xyxyzzxyzxyxyzzyxF 1.)(),,(
b. ,
y = 0.
1x , 1y 1z
1x , 1y 1z
zyxzyx ,
Dạng tuyển chuẩn tắc đầy đủ của F(x,y,z) như sau:
zyxzyxzyxF ),,(
:
yxyxzzyxzyxzyxzyxF 1.)(),,(
x y z
1 1 1
1 1 0
1 0 1
1 0 0
0 1 1
0 1 0
0 0 1
0 0 0

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 52
Đồ thị và cây
Bài 1. (Đề thi cao học ĐH Đà Nẵng – 2/2009)
Cho đồ thị
a. Biểu diễn đồ thị trên bằng ma trận kề
X1 X2 X3 X4 X5 X6
X1 0 1 1 ∞ ∞ ∞
X2 ∞ 0 ∞ 1 ∞ ∞
X3 ∞ ∞ 0 1 ∞ ∞
X4 ∞ ∞ ∞ 0 ∞ ∞
X5 ∞ ∞ ∞ ∞ 0 ∞
X6 ∞ ∞ 1 ∞ ∞ 0
b. Bậc vào của đỉnh X3
Đỉnh X3 có 2 cung đi vào, nên bậc của nó là: deg+
(x3) = 2
Bậc ra của đỉnh x6:
Đỉnh X6 có 1 cung đi ra, nên bậc của nó là: deg-
(x6) = 1
c. G có phải là đồ thị liên thông không ? Vì sao?
Không liên thông vì trong G có 1 đỉnh cô lập là x5
X1`
X2
X3
X4
X6X5

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 53
d. Tìm ổn định ngoài (G)
Ta có tập đỉnh V={x1, x2, x3, x4, x5, x6}
Xác định ánh xạ
(x1) ={x1, x2, x3}
(x2) ={x1, x2, x4}
(x3) ={x1, x3, x4, x6}
(x4) ={x2, x3, x4}
(x5) ={x5}
(x6) ={x3, x6}
Từ các tập (xi) trên ta có:
(x2) (x5) (x6) ={x1, x2, x4} {x5} {x3, x6} = V
(x3) (x4) (x5) ={x1, x3, x4, x6} {x2, x3, x4} {x5} = V
Vậy có 2 tập : B1 = {x2, x5, x6} và B2 = {x3, x4, x5}
Là các tập ổn định ngoài có số phần tử ít nhất. Từ đó ta có số ổn định ngoài
(G)=3
Bài 2. Cho đồ thị
X1`
X2
X3
X4
X6X5

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 54
a. Biểu diễn đồ thị trên bằng ma trận kề
X1 X2 X3 X4 X5 X6 X7
X1 0 1 1 1 ∞ ∞ ∞
X2 1 0 1 ∞ ∞ ∞ ∞
X3 1 1 0 1 ∞ ∞ ∞
X4 1 ∞ 1 0 ∞ ∞ ∞
X5 ∞ ∞ ∞ ∞ 0 1 ∞
X6 ∞ ∞ ∞ ∞ 1 0 ∞
X7 ∞ ∞ ∞ ∞ ∞ ∞ 0
b. Tìm số ổn định trong của đồ thị
Tập các ổn định trong 2 phần tử
A1={x1, x5} A2={x1, x6} A3={x1, x7} A4={x2, x5}
A5={x2, x6} A6={x2, x7} A7={x3, x5} A8={x3, x6}
A9={x3, x7} A10={x4, x5} A11={x4,x6} A12={x4, x7}

Tập các ổn định trong 3 phần tử
A13={x1, x5, x7} A14={x1, x6, x7}
A15={x3, x5, x7} A16={x3, x6, x7}
Tập các ổn định trong 4 phần tử A10 = {x2, x4, x5, x7}; A11 = {x2, x4, x6, x7}
Và không có tập ổn định trong có trên 4 phần tử. Vậy số ổn định trong là (G) = 4.
c. Tìm số ổn định ngoài của đồ thị
Ta có tập đỉnh V={x1, x2, x3, x4, x5, x6, x7}
Xác định ánh xạ
(x1) ={x1, x2, x3, x4}
(x2) ={x1, x2, x3}
(x3) ={x1, x2, x3, x4}

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 55
(x4) ={x1, x3, x4}
(x5) ={x5, x6}
(x6) ={x5, x6}
(x7) ={x7}
Từ các tập (xi) trên ta có:
(x1) (x5) (x7) = V (x1) (x6) (x7) = V
(x3) (x5) (x7) = V (x3) (x6) (x7) = V
Vậy ta có 4 tập : B1 = {x1, x5, x7} ; B2 = {x1, x6, x7}
B3 = {x3, x5, x7} ; B4 = {x3, x6, x7}
Là các tập ổn định ngoài có số phần tử ít nhất. Từ đó ta có số ổn định ngoài
(G)=3
d. Tìm nhân của đồ thị
Các tập : {x1, x5, x7} {x1, x6, x7} {x3, x5, x7} {x3, x6, x7}
vừa là các tập ổn định trong vừa là các tập ổn định ngoài, nên nhân của đồ thị là: :
{x1, x5, x7} {x1, x6, x7} {x3, x5, x7} {x3, x6, x7}
Bài 3. Cho đồ thị
a. Biểu diễn đồ thị trên bằng ma trận kề

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 56
X1 X2 X3 X4 X5 X6
X1 0 1 ∞ ∞ ∞ 1
X2 ∞ 0 ∞ ∞ 1 ∞
X3 ∞ 1 0 ∞ 1 ∞
X4 ∞ ∞ ∞ 0 1 ∞
X5 ∞ ∞ ∞ ∞ 0 ∞
X6 ∞ ∞ ∞ ∞ 1 0
b. Tìm số ổn định ngoài của đồ thị
Ta có tập đỉnh V = {x1, x2, x3, x4, x5, x6}
Xác định ánh xạ
(x1) ={x1}
(x2) ={x1, x2, x3}
(x3) ={ x3}
(x4) ={x4}
(x5) ={x2, x3, x4, x5, x6}
(x6) ={x1, x6}
Từ các tập (xi) trên ta có:
(x1) U (x5) = V (x2) U (x5) = V (x5) U (x6) = V
Vậy các tập ổn định ngoài có số phần tử ít nhất là :
B1= {x1, x5} B2={x2, x5} B3={x5, x6}
Từ đó ta có số ổn định ngoài (G)=2
c. Số ổn định trong
A1={x1, x3, x4} A2={x2, x4, x6} A3={x3, x4, x6}
Và không có tập ổn định trong có trên 3 phần tử. Vậy số ổn định trong là (G) = 3.
d. Nhân của đồ thị
Tập B1= {x1, x5} vừa là ổn định ngoài, vừa là ổn định trong nên B1 là nhân của
đồ thị.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 57
Bài 4. Hãy xét xem các đồ thị cho bằng ma trận kề sau, đồ thị nào là đồ thị
Euler hoặc nữa Euler và tìm chu trình Euler hoặc đường đi Euler (nếu có)
a. Vô hướng
Ta có bậc của các đỉnh như sau:
Deg(x1) = 4, Deg(x2) = 4, Deg(x3) = 5, Deg(x4) = 6
Deg(x5) = 5, Deg(x6) = 4, Deg(x7) = 4
Đồ thị có 2 đỉnh bậc lẻ đó là đỉnh X3 và X5, các đỉnh còn lại bậc chẵn. Vì vậy, đồ
thị trên là đồ thị bán Euler.
b. Có hướng
Ta có bậc của đồ thị:
Deg-
(1) = Deg+
(1)= 3; Deg-
(2) = Deg+
(2)= 2; Deg-
(3) = Deg+
(3)= 2;
Deg-
(4) = Deg+
(4)= 2; Deg-
(5) = Deg+
(5)= 3; Deg-
(6) = Deg+
(6)= 3;
1
1
2
7
X
6
6
X
6
2
4
X
3
3
X
4
5
X
5
2
1
1
2
4
X
3
3
X
4
7
X
6
5
X
5
6
X
6
8
X
6

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 58
Deg-
(7) = Deg+
(7)=2; Deg-
(8) = Deg+
(8)= 3;
Đồ thị trên là đồ thị có hướng liên thông và tất cả các đỉnh của đồ thị có bậc vào
(trong) bằng bậc ra (ngoài). Vậy, đồ thị đã cho là đồ thị Euler.
Chu trình Euler: 1 6 7 8 4 6 8 8 5 1 5 3 6 3
2 5 7 4 2 1 1.
c. Vô hướng
Ta có bậc của các đỉnh như sau:
Deg(A) = 4, Deg(B) = 4, Deg(C) = 4, Deg(D) = 4
Deg(E) = 4, Deg(F) = 4, Deg(G) = 2
Bậc của tất cả các đỉnh đều là số chẵn. Vì vậy, đồ thị đã cho là đồ thị Euler.
Chu trình Euler là: A B C A E D G B F C D E
F A
Bài 5.
a. Một đơn đồ thị liên thông có 10 mặt, tất cả các đỉnh đều có bậc bằng 4,
tìm số đỉnh của đồ thị.
Gọi f là số miền của mặt phẳng bị chia bởi biểu diễn phẳng của đồ thị,
e là số cạnh và v là số đỉnh của đồ thị
Ta có tổng bậc của đồ thị bằng 2 lần số cạnh, tức là : 2e = 4v => e=2v
Mặt khác, ta có : f = e – v + 2 10 = 2v – v + 2 => v=8
Vậy đồ thị có 8 đỉnh và 16 cạnh.
A
B
E
D
C
F
G

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 59
b. Một đơn đồ thị phẳng liên thông có 9 đỉnh, bậc của các đỉnh là 2, 2, 2, 3,
3, 3, 4, 4, 5. Tìm số cạnh và số mặt của đồ thị.
Tổng bậc của đồ thị là : 2 + 2 + 2 + 3 + 3 + 3 + 4 + 4 + 5 = 28.
Số cạnh của đồ thị là : e = 28/2 = 14 cạnh
Số mặt của đồ thị là : f = e – v + 2 = 14 – 9 + 2 = 7 mặt
Bài 6. (Đề thi cao học ĐH Đà Nẵng – 8/2009)
a. Trình bày thuật toán Kruskal tìm cây khung nhỏ nhất
Các bước của thuật toán tìm cây phủ nhỏ nhất T của đồ thị liên thông có trọng số
như sau:
Bước 1: Đặt T= (T rỗng không có cạnh)
Sắp xếp các cạnh của đồ thị theo thứ tự trọng số tăng dần vào tập Z
Bước 2: Trong khi ( T <n-1) và Z ≠ ) thực hiện:
– Tìm cạnh e có trọng số nhỏ nhất trong tập Z.
Z= Z{e}
– Nếu T {e} không tạo chu trình thì T = T U {e}
b. Áp dụng thuật toán Kruskal xác định cây khung nhỏ nhất của đồ thị với
trọng số như hình vẽ:
T= , n=11. Sắp xếp các cạnh của đồ thị theo thứ tự trọng số tăng dần như sau:
b
e
k
c
f
l
d
g
m
a h
5
5
5
5
1
10
11
6
3
3
2
6
10
8
7
4
6
4

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 60
Cạnh c,d c,f d,g f,g a,e b,e a,b b,c g,m m,l a,k f,l g,h k,l e,k d,h e,f h,m
Độ
dài
1 2 3 3 4 4 5 5 5 5 6 6 6 7 8 10 10 11
Bước lặp Cạnh được chọn và đưa vào T Trọng số
1 C,D 1
2 C,F 2
3 D,G 3
4 Không chọn cạnh (F,G), vì tạo chu trình
5 A,E 4
6 B,E 4
7 Không chọn cạnh (A,B), vì tạo chu trình
8 B,C 5
9 G,M 5
10 L,M 5
11 A,K 6
12 Không chọn cạnh (F,L), vì tạo chu trình
13 G,H 6
Tổng trọng số: 41
Tập cạnh của cây khung nhỏ nhất cần tìm là T = {(C,D), (C,F), (D,G), (A,E),
(B,E), (B,C), (G,M), (L,M), (A,K), (G,H)}, có tổng trọng số là: 41. Cây khung này
như hình dưới :
b
e
k
c
f
l
d
g
m
a h
5
5
5
1
6
32
4
6
4

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 61
Bài 7. (Đề thi cao học ĐH Đà Nẵng – 9/2010)
Cho đồ thị có trọng số G như hình vẽ
a. Đồ thị G có phải là đồ thị Euler không? Nếu có thì hãy chỉ ra chu trình
Euler? Nếu không hãy giải thích vì sao?
Để một đồ thị vô hướng là đồ thị Euler thì bậc của các đỉnh của đồ thị đều
chẵn. Nhưng bậc của các đỉnh a, c, d, k, h, m của đồ thị là số lẻ (deg(a) = 3,
deg(c) =3, deg(d)=3, deg(k)=3, deg(m)=3, deg(h)=3). Vậy đồ thị G không
phải là đồ thị Euler.
b. Hãy sử dụng thuật toán Kruskal tìm cây bao trùm nhỏ nhất của đồ thị G
có chứa cạnh bc nhưng không chứa cạnh dh.
Cây bao trùm nhỏ nhất không chứa cạnh dh của đồ thị G, ta loại cạnh dh ra
khỏi đồ thị, lúc này ta có đồ thị G’ với tập cạnh E’=E{dh} như sau:
b
e
k
c
f
l
d
g
m
a h
4
9
12
8
7
1
3
15
2
3
4
9
1
7
1
3
2
8 3
3
b
e
k
c
f
l
d
g
m
a h
4
9
12
8
7
3
15
2
3
4
9
1
7
1
3
2
8 3
3

Bài Hay  chuong 4. dai so boole

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 62
Khởi tạo T:= {(b,c)}.
Sắp xếp các cạnh của đồ thị theo thứ tự trọng số tăng dần trừ cạnh bc, ta có:
Z={(e,f), (k,l), (a,k), (d,g), (a,e), (b,f), (f,g), (h,m), (g,l), (a,b), (c,f), (c,d), (e,k),
(b,c), (l,m), (f,l), (g,m), (h,g) }.
Bước lặp Cạnh được chọn và đưa vào T Trọng số
1 E,F 1
2 K,L 1
3 A,K 2
4 D,G 2
5 A,E 3
6 B,F 3
7 F,G 3
8 H,M 3
9 Không chọn cạnh (G,L), vì tạo chu trình
10 Không chọn cạnh (A,B), vì tạo chu trình
11 Không chọn cạnh (C,F), vì tạo chu trình
12 Không chọn cạnh (C,D), vì tạo chu trình
13 Không chọn cạnh (E,K), vì tạo chu trình
14 Không chọn cạnh (B,C), vì tạo chu trình
15 (L,M) 8
Tập cạnh của cây khung nhỏ nhất cần tìm là T={(B,C), (E,F), (K,L), (A,K), (D,G),
(A,E), (B,F), (F,G), (H,M), (L,M)}, trọng số nhỏ nhất bằng : 35. Cây khung được
vẽ như sau:

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 63
Bài 8.
a. Trình bày thuật toán Prim
Các bước chính của thuật toán Prim tìm cây phủ nhỏ nhất T của đồ thị liên
thông có trọng số G được mô tả như sau:
Bước 1 : T := {v} v là đỉnh bất kỳ.
Bước 2 : Lặp n-1 lần
– Tìm đỉnh rìa v có cạnh e nối T với trọng số nhỏ nhất
– Đưa e vào T
b. Dùng thuật toán Prim tìm cây khung nhỏ nhất của đồ thị có ma trận trọng
số sau:
X1 X2 X3 X4 X5 X6 X7 X8 Tv Te
Khởi
tạo
– (16,x1) (15,x1)* (23,x1) (19,x1) (18,x1) (32,x1) (20,x1) X1
1 – (13,X3)* – (13,X3) (19,x1) (18,x1) (20,X3) (19,X3) X1, X3 X1X3
b
e
k
c
f
l
d
g
m
a h
9
8
3
2
31
1
3
2
3

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 64
2 – – – (13,X3) (19,×1) (18,×1) (19,X2)
(11,X2)
*
X1, X3,
X2
X1X3, X3X2
3 – – – (12,X8)* (19,×1) (14,×8) (18,X8) –
X1, X3,
X2, X8
X1X3, X3X2,
X2X8
4 – – – – (19,×1) (14,×8)* (18,X8) –
X1, X3,
X2, X8,
X4
X1X3, X3X2,
X2X8, X8X4
5 – – – – (19,×1) – (17,×6)* –
X1, X3,
X2, X8,
X4, X6
X1X3, X3X2,
X2X8, X8X4,
x8x6
6 – – – –
(19,×1)
*
– – –
X1, X3,
X2, X8,
X4, X6,
X7
X1X3, X3X2,
X2X8, X8X4,
x8x6, x6x7
7
X1, X3,
X2, X8,
X4, X6,
X7, X5
X1X3, X3X2,
X2X8, X8X4,
x8x6, x6x7,
x1x5
Tập cạnh của cây khung nhỏ nhất cần tìm là T={(X1,X3), (X3,X2), (X2,X8),
(X8,X4), (X8,X6), (X6,X7), (X1,X5)} trọng số nhỏ nhất bằng :
13+15+12+19+14+17+11 = 101. Cây khung được vẽ như sau:
Bài 9.
a. Trình bày thuật toán Dijkstra
Các bước chính của thuật Dijkstra để tìm đường đi ngắn nhất từ đỉnh a đến
đỉnh z trên đồ thị G=(V,E,W) được mô tả như sau:
Bước 1 : T=V; Da = 0; Di = ∞, Vi ≠ a.
Bước 2 : Lặp cho đến khi z T:
– Lấy ra khỏi T đỉnh Vi có Di nhỏ nhất
– Đánh nhãn lại cho mọi Vj kề Vi và Vj T theo công thức:
Dj = min{Dj, Di+Wij}
X1
X7
X5
X3
X6
X2
X8
X4

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 65
b. Tìm đường đi ngắn nhất từ đỉnh x1 đến các đỉnh còn lại của đồ thị vô
hướng
B.lặp X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11
Khởi
tạo
0, x1* ∞,x1 ∞, x1 ∞, x1 ∞, x1 ∞, x1 ∞, x1 ∞, x1 ∞, x1 ∞, x1 ∞,x1
1 – 9, x1 ∞, x1 9, x1 6, x1* ∞, x1 ∞, x1 ∞, x1 ∞, x1 ∞, x1 ∞, x1
2 – 8,x5* ∞, x1 9, x1 – 13, x5 ∞, x1 ∞, x1 14,x5 10,x5 ∞, x1
3 – – 13,x2 9, x1* –
13,
x5Ux2
14,x2 ∞, x1 14,x5 10,x5 ∞, x1
4 – – 13,x2 – –
13,
x5Ux2
14,x2 ∞, x1 13,x4 10,x5* ∞, x1
5 – – 13,x2* – –
13,
x5Ux2
14,x2 ∞, x1 11,x10 – 17,x10
6 – – 13,x2* – –
13,
x5Ux2
14,x2 16,x3 – – 17,x10
7 – – – – –
13,
x5Ux2
14,x2 16,x3 – – 17,x10
8 – – – – – – 14,x2 16,x3 – – 17,x10
9 – – – – – – – 16,x3 – – 17,x10
10 – – – – – – – – – – 17,x10
Từ bảng trên ta có đường đi ngắn nhất từ x1 đến các đỉnh là:
X1X5X2 (độ dài 8); X1X4 (9); X1X5X2X3 (13); X1X5 (6)
X1X5X6 (13); X1X5X2X7 (14); X1X5X2X3X8 (16)
X1X5X10X9 (11); X1X5X10 (10); X1X5X10X11 (17)
Các đường đi được minh họa trên đồ thị sau:

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 66
c. Tìm đường đi ngắn nhất từ đỉnh A đến các đỉnh còn lại của đồ thị có
hướng
B.lặp A B C D E F G H I K M
Khởi
tạo
0, A* ∞,x1 ∞, x1 ∞, x1 ∞, x1 ∞, x1 ∞, x1 ∞, x1 ∞, x1 ∞, x1 ∞,x1
1 – 7, A ∞, A ∞, A 4,A ∞, A ∞, A 1, A* ∞, A ∞, A ∞, A
2 – 7, A ∞, A ∞, A 3,H* ∞, A ∞, A – 3,H ∞, A ∞, A
3 – 6, E ∞, A ∞, A – ∞, A ∞, A – 3,H* ∞, A ∞, A
4 – 6, E* ∞, A ∞, A – 7,I ∞, A – – 12,I ∞, A
5 – – 9,B ∞, A – 7,I* ∞, A – – 12,I ∞, A
6 – –
9,B
F*
∞, A – – ∞, A – – 12,I ∞, A
7 – – – 17,C – – 15,C – – 11,C* ∞, A
8 – – – 17,C – – 14,K* – – – 16,K
9 – – – 16,G* – – – – – – 16,K
10 – – – – – – – – – – 16,K*

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 68
Từ bảng trên ta có đường đi ngắn nhất từ x1 đến x14 là: X1X6X5X8X10X13X14 hoặc
X1X6X5X8X10X11X14 và độ dài là: 25.
b. Tìm đường đi ngắn nhất từ x1 đến x14 có chứa X8X9
B.lặp X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 X13 X14 X15
Khởi
tạo
X1 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞
1 – 7,×1 6,×1 ∞ ∞ 7,×1 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞
2 – 7,×1 – ∞ ∞ 7,×1 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞
3 – – – 17,×2 12,×2 7,×1 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞
4 – – – 17,×2 8,×6 – ∞ ∞ 10,×6 ∞ ∞ ∞ ∞ ∞ ∞
5 – – – 15,×5 – – ∞ 10,×5
10,
x6
U x5
∞ ∞ ∞ ∞ ∞ ∞
6 – – – – – ∞ –
10,
x6
U x5
∞ ∞ ∞ ∞ ∞ ∞
7 – – – – –
23,
x9x8
– –
24,
x9x8
32,
x8x9
∞ ∞ ∞
8 – – – – – – – –
24,
x9x8
29,×7 31,×7 ∞ ∞ 35,×12
9 – – – – – – – – – 27,×10 31,×7 29,×10 ∞ 35,×12
10 – – – – – – – – – – 31,×7 29,×10
31,
x11
34,
x11
11 – – – – – – – – – – 31,×7 –
31,
x10
U x13
34,
x11
Từ bảng trên ta có đường đi ngắn nhất từ x1 đến x14 có chứa X8X9 là:
x1x6x5x9x8x10x11x14 , hoặc x1x6x5x9x8x10x13x14 ,
hoặc x1x6x9x8x10x11x14 , hoặc x1x6x9x8x10x13x14 với chiều dài là: 31
c. Tìm đường đi ngắn nhất từ x1 đến x14 có chứa đỉnh X7
B.lặp X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 X13 X14 X15
Khởi
tạo
X1 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞
1 – 7,×1 6,×1 ∞ ∞ 7,×1 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞
2 – 7,×1 – ∞ ∞ 7,×1 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞
3 – – – 17,×2 12,×2 7,×1 ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞
4 – – – 17,×2 8,×6 – ∞ ∞ 10,×6 ∞ ∞ ∞ ∞ ∞ ∞

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 69
5 – – – 15,x5 – – ∞ 10,x5 10,x6 ∞ ∞ ∞ ∞ ∞ ∞
6 – – – 15,x5 – – 17,x8 – 10,x6 18,x8 ∞ ∞ ∞ ∞ ∞
7 – – – 15,x5 – – 17,x8 – – 18,x8 ∞ 26,x9 ∞ ∞ ∞
8 – – – – – – 17,x8 – – 18,x8 ∞ 26,x9 ∞ ∞ ∞
9 – – – – – – – – – 21,x7 23,x7 25,x7 ∞ ∞ ∞
10 – – – – – – – – – – 23,x7 25,x7 26,x10 ∞ ∞
11 – – – – – – – – – – – 25,x7 26,x10 27,x11 30,x11
12 – – – – – – – – – – – – 26,x10 27,x11 28,x12
13 – – – – – – – – – – – – – 27,x11 28,x12
Vậy đường đi ngắn nhất từ x1 đến x14 có chứa đỉnh X7 là:
X1 X6 X5 X8 X7 X11 X14, và độ dài đường đi bằng: 27
Bài 11. Cho đồ thị G=(V,E,W)
a. Tìm đường đi ngắn nhất từ V1 đến các đỉnh của đồ thị.
B.lặp V1 V2 V3 V4 V5 V6 V7 V8 V9 V10
Khởi
tạo
V1 V1,∞ V1,∞ V1,∞ V1,∞ V1,∞ V1,∞ V1,∞ V1,∞ V1,∞
1 – 32,v1 V1,∞ 17,v1 V1,∞ V1,∞ V1,∞ V1,∞ V1,∞ V1,∞
2 – 32,v1 35,v4 – 27,v4 V1,∞ V1,∞ 21,v4 V1,∞ V1,∞

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 70
3 – 32,v1 35,v4 – 27,v4 V1,∞ 80,v8 – 25,v8 V1,∞
4 – 32,v1 35,v4 – 27,v4 V1,∞ 80,v8 – – 37,v9
5 – 32,v1 35,v4 – – 55,v5 80,v8 – – 37,v9
6 – – 35,v4 – – 55,v5 80,v8 – – 37,v9
7 – – – – – 55,v5 40,v3 – – 37,v9
8 – – – – – 55,v5 – – – 37,v9
9 – – – – – 43,v10 – – – –
b. Tìm cây phủ nhỏ nhất của G.
Sắp xếp các cạnh của đồ thị theo thứ tự trọng số tăng dần, như sau:
(v4,v8), (v8,v9), (v3,v7), (v6,v10), (v4,v5), (v9,v10), (v1,v4), (v3,v4), (v5,v9),
(v5,v6), (v1,v2), (v2,v5), (v7,v8).
Trọng số tương ứng: 4, 4, 5, 6, 10, 12, 17, 18, 25, 28, 32, 45, 59.
Bước lặp Cạnh được chọn và đưa vào T Trọng số
1 (v4,v8) 4
2 (v8,v9) 4
3 (v3,v7) 5
4 (v6,v10) 6
5 (v4,v5) 10
6 (v9,v10) 12
7 (v1,v4) 17
8 (v3,v4) 18
9 Không chọn (v5,v9), vì tạo chu trình
10 Không chọn (v5,v6), vì tạo chu trình
11 (v1,v2) 32
Tổng trọng số: 108

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 71
Bài 12. Tìm đường đi ngắn nhất giữa các cặp đỉnh của các đồ thị sau:
a. Đồ thị có hướng

14
11
67
57
0W
ba
d
dc
cb
P0

a c : C(d,a) + C(a,c) = 9
4
6
d
1
b
a
c
7
117
5

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 72
914
11
67
57
1W
aba
d
dc
cb
P1
– :
b d : C(a,b) + C(b,d) = 13
d b c : C(d,b) + C(b,c) = 8 < W1(d,c)=9
d b d : C(d,b) + C(b,d) = 7
7814
11
67
1357
2W
bcba
d
dc
bcb
P2
– :
7814
11
67
1357
3W
bcba
d
dc
bcb
P3
– :
7814
11191215
67710
135717
4W
bcba
dbdd
dcdd
bcbb
P4
*=W4
4
: i1= P(b,a) = d, i2 =
d c

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 73
b. Đồ thị có hướng
1
22
4
3
14
27
0 WW
1
4292
4
3
14
27
1W
251
104292
584
3
14
82117
2W
8251
5104292
11584
3
714
1482117
3W
8251
594282
11584
3
714
1372106
4W
726414
594282
1059747
3
615393
1272969
5W

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 74
726414
574262
1059747
359747
615373
1272969
* 6WW
Bài 13. (Đề thi cao học ĐH Đà Nẵng – 8/2008)
Đ ồ thị có hướng G = (V,E), được cho bởi ma trận trọng số như sau:
1 2 3 4 5 6
1 7 1
2 4 1
3 5 2 7
4
5 2 5
6 3
a. Vẽ đồ thị
1
1
3
3
4
6
5
5
7
4
2
2
5
7
1
2

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 75
b. Gọi trọng số đã cho là khả năng thông qua của cung đó. Cho biết đồ thị
đã cho có phải là mạng không? Tại sao?
Đồ thị đã cho là mạng, tại vì nó thỏa mãn các điều kiện:
– Đây là đồ thị có hướng và liên thông yếu
– Mỗi cung (i,j) E đều có cij >0 (khả năng thông qua cung (i,j))
– Có duy nhất một đỉnh phát là đỉnh số 1 và duy nhất một đỉnh thu là
đỉnh số 4.
c. Tính bậc ngoài của đỉnh 1 và bậc trong của đỉnh 4.
Bậc ngoài (ra) của đỉnh 1: Deg+
(1) = 2
Bậc trong (vào) của đỉnh 4: Deg-
(4) = 2
d. Dùng giải thuật Ford-Fulkerson trình bày cách tìm đường tăng luồng
trong lần lặp thứ nhất.
{1, 2, 3, 4, 5, 6}
2 6 5 4
= min(cf(1,2), cf(2, 6), cf(6, 5) , cf(5, 4))
= min(c(1, 2) − f(1,2), c(2, 6) − f(2, 6), c(6,5) − f(6,5), c(5,4) − f(5,4))
= min(7− 0, 1 − 0, 3 – 0, 5 – 0) = 1
1,2) = 1; f(2,6) =1; f(6,5) = 1; f(5,4) = 1
1
1
3
3
4
6
5
5
7
4
2
2
5
7
1
2
(1)
(1)
(1)
(1)

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 76
2 4
= min(cf(1,2), cf(2, 4))
= min(c(1, 2) − f(1,2), c(2, 4) − f(2, 4))
= min(7− 1, 4 − 0) = 4
5; f(2,4) =4;
4. (Đề thi cao học 3/2011 – ĐH Đà Nẵng)
Giả sự nước Nhật xây dựng lại mạng viễn thông như đồ thị đã cho, giữa hai thành
phố có thể kết nối trực tiếp hoặc gián tiếp qua các thành phố khác. Ưu tiến các
đường truyền trực tiếp từ các thành phố đến Tokyo hơn là gián tiếp nếu có cùng
chi phí. Mỗi thành phố được biểu diễn bởi một đỉnh của đồ thị, trọng số của cung
là ước tính chi phí xây dựng đường truyền. Chất lượng đường truyền giữa hai
thành phố chính bằng số các thành phố trung gian giữa hai thành phố. Nếu hai
thành phố được nối trực tiếp sẽ cho chất lượng tốt nhất. Chất lượng đường truyền
của toàn hệ thống chính bằng chất lượng kết nối xấu nhất giữa hai thành phố nào
đó.
a. Tính chi phí tối thiểu để xây dựng hệ thống đường truyền liên thông giữa
các thành phố.
b. Chi phí tối thiểu để xây dựng hệ thống đường truyền liên thông mà tất cả
các đường truyền xuất phát từ Tokyo đều được giữ lại.
c. Hãy tính chất lượng đường truyền của toàn hệ thống. Hãy cho biết các cặp
thành phố nào có chất lượng thấp nhất.
d. Hãy đưa ra phương án tối ưu sao cho nếu có một cung nào đó bị xóa, thì đồ
thị vẫn liên thông.
1
1
3
3
4
6
5
5
7
4
2
2
5
7
1
2
(5)
(1)
(1)
(1)
(4)

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 77
a. Chi phí tối thiểu để xây dựng hệ thống đường truyền liên thông giữa các
thành phố chính bằng giá trị cây khung nhỏ nhất của đồ thị. Ta dùng
thuật toán Kruskal để tìm cây bao trùm tối thiểu như sau:
– Khởi tạo T= .
– Sắp xếp các cạnh của đồ thị theo thứ tự trọng số tăng dần vào tập Z
Z={(Ya,Se), (Nago,Yo), (Toky, Yo), (Fu,Se), (Toky,Fu), (Toky,Nago),
(Toky,Ya), (Naga,Hi), (Yo,Fu), (Toky,To), (To,Ya), (Nago,Ko), (Toky,Se),
(Se,Ao), (Nago,Hi), (Ko,Naga), (Ao,Ya), (Nago,Naga), (To,Hi), (Ko,Yo)}
Trọng số tương ứng: 4, 6, 7, 7, 12, 15, 15, 15, 15, 17, 17, 17, 20, 20, 20, 25,
25, 30, 30, 30
Bước lặp Cạnh được chọn và đưa vào T Trọng số
1 (Ya,Se) 4
2 (Nago,Yo) 6
3 (Toky, Yo) 7
4 (Fu,Se) 7
5 (Toky,Fu) 12
Nagasaki
15
Hiroshima
Toyama
Yamagata
Aomori
Tokyo
Yokoham
a
Nagoy
a
Kochi
Sendai
Fukushi
ma
30
25
17
30
20
30
17
25
4
20
720
12
157
15
17
15
6

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 78
6 Không chọn (Toky,Nago), vì tạo chu trình
7 Không chọn (Toky,Ya), vì tạo chu trình
8 (Naga,Hi) 15
9 Không chọn (Yo,Fu), vì tạo chu trình
10 (Toky,To) 17
11 Không chọn (To,Ya), vì tạo chu trình
12 (Nago,Ko) 17
13 Không chọn (Toky,Se), vì tạo chu trình
14 (Se,Ao) 20
15 (Nago,Hi)
16 Không chọn (Ko,Naga), vì tạo chu trình
17
Không chọn (Ao,Ya), (Nago,Naga), (To,Hi),
(Ko,Yo), vì tạo chu trình
Tổng trọng số:
125
Chi phí tối thiểu để xây dựng hệ thống đường truyền liên thông giữa các thành phố
là 125. Sơ đồ kết nối như hình dưới:
Nagasaki
15
Hiroshima
Toyama
Yamagata
Aomori
Tokyo
Yokoham
a
Nagoya
Kochi
Sendai
Fukushim
a
17
20
4
20
7
12
7
17
6

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 79
b. Khởi tạo T= {(Toky,Ya), (Toky, Se), (Toky, Fu), (Toky,Yo),
(Toky,Nago)}.
Z = ET. Sắp xếp các cạnh của đồ thị trong Z theo thứ tự trọng số tăng dần
Z ={(Ya,Se), (Nago,Yo), (Fu,Se), (Naga,Hi), (Yo,Fu), (Nago,Ko), (Se,Ao),
(Nago,Hi), (Ko,Naga), (Ao,Ya), (Nago,Naga), (To,Hi), (Ko,Yo)}
Bước lặp Cạnh được chọn và đưa vào T Trọng số
1 Không chọn (Ya,Se), vì tạo chu trình
2 Không chọn (Nago,Yo), vì tạo chu trình
3 Không chọn (Fu,Se), vì tạo chu trình
4 (Naga,Hi) 15
5 Không chọn (Yo,Fu), vì tạo chu trình
6 (Nago,Ko) 17
7 (Se,Ao) 20
8 (Nago,Hi) 20
9
Không chọn (Ko,Naga), (Ao,Ya), (Nago,Naga)
(To,Hi), (Ko,Yo), vì tạo chu trình
Chi phí tối thiểu để xây dựng hệ thống đường truyền liên thông mà tất cả các
đường truyền xuất phát từ Tokyo đều được giữ lại là : 158 và đường kết nối như
hình sau:

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 80
c.
Dùng thuật toán Floy tìm đường đi ngắn nhất giữa các cặp đỉnh, trọng số của đồ thị
cij=1 (nếu đỉnh i có cạnh nối với đỉnh j: i,j = 1..11), cij = ∞ (nếu đỉnh i không có
cạnh nối với đỉnh j).
Ma trận liền kề của đồ thị
Nagasaki
15
Hiroshima
Toyama
Yamagata
Aomori
Tokyo
Yokohama
Nagoya
Kochi
Sendai
Fukushim
a
17
20
20
20
12
7
15
17
15
Naga(1)
1
Hi (4)
To (5)
Ya (11)
Ao (10)
Toky(6)
Yo (7)
Nago(3)
Ko(2)
Se (9)
Fu (8)
1
1
1
1
1
1
1
1
1
1
11
1
11
1
1
1
1

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 82
01122112233
101
11012123233
2101123233
2210122112
1111012122
1222101232
2332210121
2221121011
3331232101
3332221110
6W
01122112233
101
11012123233
2101123223
2210122112
1111012122
1222101232
2332210121
2221121011
3321232101
3332221110
7W
01122112233
101
11012123233
2101123223
2210122112
1111012122
1222101232
2332210121
2221121011
3321232101
3332221110
8W
01122112233
10123234344
11012123233
22101123223
23210122112
12111012122
13222101232
24332210121
23221121011
34321232101
34332221110
9W
01122112233
10123234344
11012123233
22101123223
23210122112
12111012122
13222101232
24332210121
23221121011
34321232101
34332221110
10W
01122112233
10123233344
11012123233
22101123223
23210122112
12111012122
12222101232
23332210121
23221121011
34321232101
34332221110
11W
Từ ma trận W11, ta có chất lượng đường truyền của toàn hệ thống là 4. Các cặp
thành phố có chất lượng thấp nhất là: (Nagasaki, Aomori), (Kochi Aomori).
c. Phương án tối ưu sao cho nếu có một cung nào đó bị xóa, thì đồ thị vẫn liên
thông. Thêm cạnh để đồ thị thành đồ thị Euler (Tất cả các đỉnh của đồ thị có bậc
chẳn). Khi đó nếu có 1 cạnh nào bị xóa đồ thị vẫn còn đường đi Euler.

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 83
Bài 15. (Đề thi cao học ĐH CNTT TP HCM – 2010)
Cho đồ thị G như sau:
a. Viết biểu diễn ma trận của đồ thị G.
a b c d u v t y z
a 0 5 10 ∞ 6 ∞ ∞ ∞ ∞
b 5 0 9 20 ∞ ∞ ∞ ∞ ∞
c 10 9 0 12 2 8 ∞ ∞ ∞
d ∞ 20 12 0 ∞ 5 ∞ 4 ∞
u 6 ∞ 2 ∞ 0 ∞ 22 ∞ ∞
v ∞ ∞ 8 5 ∞ 0 10 14 15
t ∞ ∞ ∞ ∞ 22 10 0 ∞ 4
y ∞ ∞ ∞ 4 ∞ 14 ∞ 0 9
z ∞ ∞ ∞ ∞ ∞ 15 4 9 0
1
4
5
11
10
6
7
3
2
9
8
a c
d e f
g
h j
f
a
b d
y
z
tu
c v
20
4
9
14
15
4
10
22
6
5 9
10
12
2
8
5

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 84
b. Trình bày một thuật toán để tìm cây bao trùm tối thiểu của một đồ thị có trọng
số. Áp dụng thuật toán đó để tìm cây bao trùm tối thiểu của đồ thị G.
Thuật toán Prim để tìm cây khung nhỏ nhất như sau:
Các bước chính của thuật toán Prim tìm cây phủ nhỏ nhất T của đồ thị liên thông
có trọng số G được mô tả như sau:
Bước 1 : T := {v} v là đỉnh bất kỳ.
Bước 2 : Lặp n-1 lần
o Tìm đỉnh rìa v có cạnh e nối T với trọng số nhỏ nhất
o Đưa e vào T
a b c d u v t y z Tv Te
Khở
i tạo – 5,a 10,a ∞,a 6,a ∞,a ∞,a ∞,a ∞,a a
1 – – 9,b 20,b 6,a ∞,a ∞,a ∞,a ∞,a a,b ab
2 – – 2,u 20,b – ∞,a 22,u ∞,a ∞,a a, b, u ab, au
3 – – – 12,c – 8,c 22,u ∞,a ∞,a a, b, u, c ab, au, uc
4 – – – 5,v – – 10,v 14,v 15,v a, b, u, c, v
ab, au,
uc, cv
5 – – – – – – 10,v 4,d 15,v a, b, u, c, v, d
ab, au,
uc, cv, vd
6 – – – – – – 10,v – 9,y a, b, u, c, v, d, y
ab, au,
uc, cv,
vd, dy
7 – – – – – – 4,z – –
a, b, u, c, v, d,
y, z
ab, au,
uc, cv,
vd, dy, yz
8 – – – – – – – – –
a, b, u, c, v, d,
y, z, t
ab, au,
uc, cv,
vd, dy,
yz, zt
Tập cạnh của cây khung nhỏ nhất cần tìm là T={(a,b), (a,u), (u,c), (c,v), (v,d),
(d,y), (y,z) , (z,t)} trọng số nhỏ nhất bằng : 5+2+5+6+8+4+4+9 =43 . Cây khung
được vẽ như sau:
a c
d e f
g
h j
f
a
b d
y
z
tu
c v
4
9
4
6
5
2
8
5

Toán rời rạc – Tài liệu dùng để luyện thi cao học ngành Khoa học máy tính
ấn Ngọc [email protected] 85
c. Giả sử e1 và e2 là hai cạnh của G. Hãy xây dựng một thuật toán tìm một cây
bao trùm của đồ thị G thỏa mãn các điều kiện sau: T không chứa các cạnh e1 và
e2, và tổng trọng số các cạnh của cây T là nhỏ nhất. Áp dụng thuật toán đó để
tìm cây bao trùm tối thiểu của G không chứa các cạnh uc và dy.
Bước 1:
– Khởi tạo T:= . Z = E{e1,e2}
– Sắp xếp tập các cạnh của đồ thị trong Z, theo thứ tự trọng số tăng
dần.
Bước 2: Trong khi ( T <n-1) và Z ≠ ) thực hiện:
– Tìm cạnh e có trọng số nhỏ nhất trong tập Z. Z= Z{e}
– Nếu T U {e} không tạo chu trình thì T = T U {e}
Áp dụng thuật toán trên tìm cây bao trùm tối thiểu như sau:
– Khởi tạo T:= .
– Sắp xếp các cạnh của đồ thị theo thứ tự trọng số tăng dần, trừ cạnh uc và dy
như sau:
Z={(t,z ‘4’), (a,b ‘5’), (d,v ‘5’), (a,u ‘6’), (c,v ‘8’), (b,c ‘9’), (y,z ‘9’), (a,c ‘10’),
(v,t ‘10’), (c,d ‘12’), (v,y ‘14’), (v,z ‘15’), (b,d ‘20’), (u,t ‘22’)}.
Bước lặp Cạnh được chọn và đưa vào T Trọng số
1 T,Z 4
2 A,B 5
3 D,V 5
4 A,U 6
5 C,V 8
6 B,C 9
7 Y,Z 9
8 Không chọn cạnh (A,C), vì tạo chu trình
9 V,T 10
10…
Không chọn cạnh (c,d), (v,y), (v,z), (b,d), (u,t), vì
tạo chu trình
Tổng trọng số:
56

Bạn đang xem bài viết: Bo de toan roi rac (on thi cao hoc khmt). Thông tin do Elive chọn lọc và tổng hợp cùng với các chủ đề liên quan khác.

Leave a Comment