1
1
Bài toán xếp 8 quân hu
Bài toán xếp 8 quân hu
1.
1.Gii thiu bài toán: Quân hu trên bàn c
Gii thiu bài toán: Quân hu trên bàn c
Vua có th ăn theo hàng, ct, đường chéo
Vua có th ăn theo hàng, ct, đường chéo
cha nó. Tìm cách đặt 8 quân hu trên bàn c
cha nó. Tìm cách đặt 8 quân hu trên bàn c
sao cho không quân nào ăn được ca quân
sao cho không quân nào ăn được ca quân
nào
nào
2.
2.Ý tưởng thut toán: Mt con hu xếp mt v
Ý tưởng thut toán: Mt con hu xếp mt v
trí bt k trên bàn c thì để tìm được v trí ca
trí bt k trên bàn c thì để tìm được v trí ca
con hu tiếp theo ta phi xét theo 3 hướng như
con hu tiếp theo ta phi xét theo 3 hướng như
hình sau:
hình sau:
2
2
Mô hình bài toán
Mô hình bài toán
Các con hu tiếp
theo phi được chn
các v trí không
nm trên các đường
dc, đường ngang
và đường chéo ca
con các con hu
trước.
3
3
Các bước gii quyết bài toán
Các bước gii quyết bài toán
Ta tìm v trí để đặt cho con hu th i, vi con hu
Ta tìm v trí để đặt cho con hu th i, vi con hu
th i thì ta phi xét xem trên các hướng ca nó
th i thì ta phi xét xem trên các hướng ca nó
sau đó tìm tiếp v trí cho con hu th i + 1.
sau đó tìm tiếp v trí cho con hu th i + 1.
Nếu bước th i không tìm thy v trí đặt ca
Nếu bước th i không tìm thy v trí đặt ca
con hu thì chúng ta phi quay li xét đến v trí
con hu thì chúng ta phi quay li xét đến v trí
khác ca con hu th i – 1.
khác ca con hu th i – 1.
Trường hp suy biến ca bài toán là khi chúng ta
Trường hp suy biến ca bài toán là khi chúng ta
đã đặt cho con hu th 8 có nghĩa là c 8 con
đã đặt cho con hu th 8 có nghĩa là c 8 con
hu đã đưc xếp trên bàn c và tho mãn điu
hu đã đưc xếp trên bàn c và tho mãn điu
kin là các con hu không th ăn đưc nhau.
kin là các con hu không th ăn đưc nhau.
4
4
Bài toán tìm đường đi bng chu trình
Bài toán tìm đường đi bng chu trình
Hamilton
Hamilton
Gii thiu bài toán: Mt người khách du lch mun
Gii thiu bài toán: Mt người khách du lch mun
đi thăm n thành ph được đánh s t 1 đến n.
đi thăm n thành ph được đánh s t 1 đến n.
Mng lưới giao thông gia n thành ph này là 2
Mng lưới giao thông gia n thành ph này là 2
chiu và được cho bi ma trn A[i,j] trong đó A[i,j]
chiu và được cho bi ma trn A[i,j] trong đó A[i,j]
= 1 nếu có đường đi gia thành ph i và thành ph
= 1 nếu có đường đi gia thành ph i và thành ph
j, A[i,j] = 0 trong trưng hp ngược li. Thiết lp
j, A[i,j] = 0 trong trưng hp ngược li. Thiết lp
đường đi cho người khách thông báo tn ti đường
đường đi cho người khách thông báo tn ti đường
đi hoc không tn ti đường đi.
đi hoc không tn ti đường đi.
5
5
Mô hình bài toán
Mô hình bài toán
Chúng ta có file có n + 1 dòng như sau:
Chúng ta có file có n + 1 dòng như sau:
Dòng 1: Ghi s nguyên dương là n thành ph
Dòng 1: Ghi s nguyên dương là n thành ph
Dòng i + 1: (1
Dòng i + 1: (1in
in): ghi n s nguyên không âm
): ghi n s nguyên không âm
A[i,1] A[i,2]…A[i,n] cho biết có đường đi hay
A[i,1] A[i,2]…A[i,n] cho biết có đường đi hay
không gia hai thành ph i và j (1
không gia hai thành ph i và j (1jn
jn).
).
Kết qu tn ti hay không tn ti đường đi.
5
0 0 1 1 1
0 0 1 1 1
1 1 0 1 1
1 1 1 0 1
1 1 1 1 0
Kết qu:
Chu trình Hamilton như
sau:
1 3 2 4 5 1