TopStudy

Tin học · Lớp 11

Giải chuyên đề Tin 11 Cánh diều Bài 5. Thực hành kĩ thuật quay lui giải bài toán xếp hậu có đáp án

4 câu · 10 phút · Ngân hàng đề TopStudy. Đáp án và lời giải do TopStudy biên soạn, mở ngay dưới từng câu.

Làm bài

Nội dung đề

Phần I. Tự luận

Câu 1

1 điểm
Với n = 4 có hai cách đặt 4 quân hậu thoả mãn, em hãy chỉ ra hai dãy số mbiểu diễn lời giải của hai cách đó theo dãy x, hai dãy đó có đặc điểm gì?
Xem đáp án và lời giải

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

Quân hậu đặt ở ô(i,j) sẽ tấn công các quân hậu đặt ở ô cùng hàng, cùng cột hoặc cùng đường chéo. Cụ thể, quân hậu đặt ở ô(i,j) sẽ tấn công các quân hậu đặt ở:

- Các ô cùng hàng là các ô(i,j'), với 0 <<j<<n-1

- Các ô cùng cột là các ô (i',j'), với 0 < i'<<n-1

- Các ô cùng đường chéo từ trên bên trái hướng xuống dưới sang bên phải.

- Các ô cùng đường chéo từ dưới bên trái hướng lên bên phải trên

Câu 2

1 điểm
Em hãy đưa ra điều kiện để kiểm tra hai quân hậu đặt ở 2 ô (u1,v1) và (u2,v2) tấn công nhau
Xem đáp án và lời giải

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

Dãy X = (x0,x1...xn-1) là 1 hoán vị của dãy (0,1...n-1) biểu diễn 1 cách đặt thỏa mãn nếu với mọi i khác j thì 2 điều kiện sau thỏa mãn: i-xi khác j -xj và i+x1 khác j+xj.

Với cách mô tả lời giải bài toán bằng 1 dãy X = (X0,x1...xn-1) là hoán vị của dãy (0,1,...n-1), trong đó xi là chỉ số cột của quấn hậu trên hàng thứ i (0 <<i<<n-1), ta có thể giải quyết bài toán bằng cách sử dụng kĩ thuật quay lui để liệt kê tất cả các hoán vị của dãy (0,1, ...n-1). Với mỗi hoán vị đó, tiến hành kiểm tra để chọn nghiệm

Câu 3

1 điểm
Tìm hiểu chương trình giải quyết bài toán xếp hậu bằng kĩ thuật quay lui trong Hình 4, giải thích ý nghĩa các hàm check, printSolution, permutation và chạy thử nghiệm với n = 4, 5, 8 và 10.
Xem đáp án và lời giải

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

Nhập chương trình sau và đọc kết quả xuất ra màn hình

Hình minh hoạ

Câu 4

1 điểm

Bài toán xếp hậu mở rộng

Trên bản cờ vua kích thước n x n có một ô (u, v) bị cấm, cần đặt n quản hậu lên bản cờ sao cho không có hai quân nào tấn công nhau và không có quản nào đội vào ô (u, v) bị cấm.

Xem đáp án và lời giải

Hướng dẫn chấm do TopStudy biên soạn, mang tính gợi ý

Ký hiệu quân hậu đứng ở ô nằm trên hàng thứ i của lời giải là Q[i, j]. Các chỉ số dòng cột đánh từ trên xuống dưới, trái sang phải theo cách đánh số trong ma trận). Trong một ma trân vuông:

Các phần tử nằm trên cùng hàng có chỉ số hàng bằng nhau;

Các phần tử nằm trên cùng cột có chỉ số cột bằng nhau;

Các phần tử nằm trên cùng một đường chéo song song với đường chéo chính có hiệu chỉ số hàng với chỉ số cột bằng nhau;

Các phần tử nằm trên cùng một đường chéo song song với đường chéo phụ có tổng chỉ số hàng với chỉ số cột bằng nhau;

Vì thế ta gọi các đường chéo song song với đường chéo chính là đường chéo trừ (hay hiệu), các đường chéo song song với đường chéo phụ là đường chéo cộng (hay tổng).

Do đó, mỗi lời giải có thể được biểu diễn bởi dãy Q[1,i1_{1}],Q[2,i2_{2}],...,Q[n, in_{n}],thỏa mãn các điều kiện:

Các chỉ số cột i1_{1}, i2_{2},..., in_{n} đôi một khác nhau, hay chúng lập thành một hoán vị của các số 1, 2,.., n.

Tổng chỉ số dòng và cột của các quân hậu 1+i1_{1}, 2+i2_{2},..., n+in_{n} đôi một khác nhau;

Hiệu chỉ số dòng và cột của các quân hậu 1-i1_{1}, 2-i2_{2},...,n-in_{n} đôi một khác nhau.

Đề cùng chủ đề

Tất cả đề Chuyên đề 3: Thực hành thiết kế thuật toán theo kĩ thuật duyệt · Các bộ sách Tin học Lớp 11