CHUYỂN DỊCH QUÂN CỜCHO MỘT BÀN CỜ VUÔNG 8 X 8 TRÊN ĐÓ CHO TRỚC...

Bài 3. Chuyển dịch quân cờ

Cho một bàn cờ vuông 8 x 8 trên đó cho trớc một số quân cờ. Ví dụ hình sau vẽ một

bàn cờ nh vậy:

Chúng ta cần chuyển vị trí của một quân cờ sang một vị trí rỗng khác trên bàn cờ.

Công việc sẽ thành công nếu quân cờ đó đi đợc đến đích sau khi phải đi qua các ô trống và chỉ

đi đợc trên các đờng thẳng đứng hoặc nằm ngang. Nhiệm vụ của chơng trình là kiểm tra khả

năng thành công của nớc đi.

Dữ liệu nhập đợc ghi trên tệp văn bản BANCO.TXT bao gồm 8 dòng, mỗi dòng là một

nhị phân độ dài 8. Vị trí các quân cờ ứng với số 1, các ô trống ứng với số 0. Ví dụ tệp

BANCO.TXT ứng với bàn cờ trên.

01010100

10011001

10100011

00010100

00100000

01010001

10011000

01000110

Chơng trình khi chạy sẽ yêu cầu nhập từ bàn phím vị trí quân cờ cần chuyển và vị trí

đích. Vị trí trên bàn cờ là cặp số tự nhiên XY chỉ ra: X - số thứ tự của cột tính từ trái qua phải

và Y - thứ tự hàng tính từ dới lên. Tiếp theo, chơng trình sẽ kiểm tra khả năng thực hiện của n-

ớc đi. Các khả năng thông báo của chơng trình nh sau:

Không thành công: vị trí ban đầu không có quân cờ

Không thành công: vị trí đích không rỗng

Không thành công: vị trí không tìm đợc cách đi

Thành công

Với trờng hợp cụ thể trên ta có thể có các phơng án chạy chơng trình nh sau:

Vị trí quân cờ: 1 2

Vị trí đích: 6 4

Không thành công: không tìm đợc đờng đi

Vị trí quân cờ: 2 3

Vị trí đích: 5 1

Vị trí quân cờ: 1 3

Vị trí đích: 8 2

Không thành công: Vị trí ban đầu không có quân cờ

Yêu cầu kỹ thuật: Tệp chơng trình phải đợc đặt tên là B3.PAS

Đề thi tin học trẻ không chuyên tq lần thứ IV-1998

Khối C - Thời gian: 180 phút