SỞ GIÁO DỤC – ĐÀO TẠO KỲ THI CHỌN HỌC SINH GIỎI LỚP 12 CẤP TỈNH THỪA THIÊN HUẾ NĂM HỌC 2005 – 2006 Đề chính thức Môn thi: TIN HỌC, vòng 2 Số báo danh: Thời gian: 150 phút không kể thờ
Trang 1SỞ GIÁO DỤC – ĐÀO TẠO KỲ THI CHỌN HỌC SINH GIỎI LỚP 12 CẤP TỈNH
THỪA THIÊN HUẾ NĂM HỌC 2005 – 2006
Đề chính thức Môn thi: TIN HỌC, vòng 2
Số báo danh: Thời gian: 150 phút (không kể thời gian giao đề)
HỌC SINH LẬP TRÌNH GIẢI HAI BÀI TOÁN SAU:
(đề thi có 4 trang)
Tổng quan về các file:
Tên bài Tên file nguồn Tên file văn bản chứa dữ liệu vào, raVào Ra Xếp gạch XEPGACH.PAS XEPGACH.INP XEPGACH.OUT Chinh phục thế giới THEGIOI.PAS THEGIOI.INP THEGIOI.OUT
BÀI 1: XẾP GẠCH
Minh rất thích trò chơi xếp các chiếc hộp có hình viên gạch Minh đặt các viên gạch chồng lên nhau và xây thành nhiều chồng có độ cao khác nhau Minh khoe với chị rằng “Chị trông, em đã xây được một bức tường” Chị của Minh trả lời “Em phải xếp các viên gạch có độ cao giống nhau mới được gọi là một bức tường” Sau khi nghe chị nói như vậy nó cân nhắc một
tí và cho rằng ý kiến ấy là đúng Vì vậy em bắt đầu tiến hành sắp xếp lại các chồng gạch lần lượt từng chiếc một cho đến khi hoàn thành công việc Khi công việc đã hoàn tất, Minh mệt lả và muốn có bạn nào giúp Minh di chuyển các viên gạch với số lần ít nhất
Các chiếc hộp trước và sau khi xếp
Yêu cầu: Hãy lập trình đưa ra số lần di chuyển ít nhất của các viên
gạch sao cho từ các chồng gạch có độ cao khác nhau trở thành các chồng gạch có độ cao bằng nhau; lần lượt từng chiếc một cho đến khi hoàn thành công việc
Dữ liệu vào: có cấu trúc sau:
Trang 2- dòng đầu tiên là số n, n là số các chồng gạch,
- dòng tiếp theo lần lượt là các hi, độ cao của chồng gạch thứ i (1≤ n
≤ 50; 1≤ hi ≤ 100; i = 1 n) Lưu ý rằng số viên gạch bao giờ cũng chia hết cho số chồng gạch
Dữ liệu ra: chỉ có một dòng chứa một số nguyên dương là kết quả
tính toán số lần ít nhất sau khi xếp lại các chồng gạch Nếu không có kết quả cũng phải ghi rõ “KHONG CAN DI CHUYEN LAN NAO”
Ví dụ: với hình trên ta có dữ liệu vào, ra:
6
5 2 4 1 7 5
Số lần di chuyển tối thiểu là 5 lần
BÀI 2: CHINH PHỤC THẾ GIỚI
Chinh phục thế giới là trò chơi của các chiến binh La Mã chơi trong những lúc nghỉ ngơi Trò chơi có nhiều người chơi đối kháng với nhau, tất
cả đều cố gắng chinh phục thế giới Bảng trò chơi là một bản đồ thế giới theo giả thuyết các nước được nối với nhau có hình gấp khúc Trong lượt đi của người chơi, quân đội của một nước chỉ được cho phép tấn công các nước
mà có cùng biên giới chung Từ đó, quân đội có thể di chuyển vào trong nước mới chiến thắng để tiếp tục đi đến nước khác
Trong tiến trình của trò chơi, người chơi nhắm vào mục đích chinh phục là phải chiến thắng và sử dụng nước vừa chiếm được để chuyển một khối lượng lớn quân đội từ nước bắt đầu nào đó đến một nước khác cho đến khi kết thúc trò chơi Người chơi cần coi trọng việc đánh chiếm các nước sao cho tối giản số nước sẽ được chinh phục Các quốc gia được đánh số từ
1 đến M (1 ≤ M ≤ 100) Hình vẽ sau mô tả một bảng trò chơi với 20 nước giữa 1 và 19 kết nối tới các nước khác
Sơ đồ kết nối minh họa mẫu nhập vào
Trang 3đầu và một nước nơi đến sau đó tính toán số tối thiểu của các nước phải được chinh phục để đạt đến được đích Không cần ghi cụ thể ở đầu ra các bước đi, chỉ ghi số nước sẽ được chinh phục kể cả đích đến Ví dụ, nếu nước bắt đầu và nơi đến láng giềng, thì chương trình của bạn cần phải trả lại một
số thôi
Dữ liệu đầu vào: là tập cấu hình của bảng trò chơi Dữ liệu vào mô tả
bảng nằm trên các dòng 1 đến M-1 Trình bày ranh giới mỗi quốc gia tránh liệt kê hai lần, chỉ liệt kê các biên giới quốc gia I quốc gia J, khi I < J Như vậy, hàng thứ I, I < M, chứa một số nguyên X chỉ báo bao nhiêu quốc gia chia sẻ các ranh giới với nước I, các số nguyên X phân biệt với J lớn hơn hơn I và không vượt hơn M, từng cái mô tả một ranh giới giữa các nước I và
J Dòng M chứa một số nguyên N (1 ≤ N ≤ M) báo lượt sẽ đi chinh phục N dòng tiếp theo mỗi hàng chứa chính xác hai số nguyên A, B (1 ≤ A, B ≤ M;
A ≠ B) báo nước bắt đầu và kết thúc cho một lượt đi chinh phục
Dữ liệu đầu ra: gồm N dòng, trên mỗi dòng chương trình phải in
thông báo “Từ S đến D: K”, trong đó S là quốc gia xuất phát, D quốc gia cần đến và K là tổng số đoạn đường phải đi qua
Với ví dụ của hình trên, ta có dữ liệu vào ra:
1 3
2 3 4
3 4 5 6
1 6
1 7
2 12 13
1 8
2 9 10
1 11
1 11
2 12 17
1 14
2 14 15
2 15 16
1 16
1 19
2 18 19
1 20
Từ 1 đến 20 : 7
Từ 2 đến 9 : 5
Từ 19 đến 5 : 6
Từ 18 đến 19 : 2
Từ 16 đến 20 : 2
Trang 41 20
5
1 20
2 9
19 5
18 19
16 20
- Giám thị không giải thích gì thêm.
Trang 5ĐÁP ÁN, HƯỚNG DẪN CHẤM MÔN TIN HỌC (VÒNG 2) KỲ THI CHỌN HỌC
SINH GIỎI LỚP 12 CẤP TỈNH NĂM HỌC 2005 – 2006
Đáp án, hướng dãn chấm
BÀI 1: XẾP GẠCH 11điểm
Có 22 test, mỗi test cho 0.5 điểm Tất cả thực hiện cùng lúc trong một thời điểm test, thời gian thực thi không quá 30 giây
VÀO
6
5 2 4 1 7 5
2
1 3
4
1 2 3 6
3
4 4 4
1
100
1
50
1
1
10
30 57 14 79 9 25 74 31 19 12
20
72 81 2 67 22 87 30 47 54 46 99 41 51 43 10 4 88 8 94 34
25
84 54 72 77 96 91 97 46 80 53 4 91 31 44 72 27 42 24 48 47 58 93 78 68 48
30
17 70 33 83 81 72 42 54 20 60 80 76 51 89 96 17 4 57 66 22 74 25 78 6 43
16 82 21 67 58
40
13 34 24 55 72 45 38 51 22 57 5 52 70 33 42 19 95 70 39 68 8 6 47 51 34
21 2 65 61 19 99 44 7 46 66 90 1 18 88 43
45
36 56 66 35 65 74 35 25 47 30 48 84 11 15 75 45 39 54 93 3 7 66 24 61 52
49 15 24 32 2 62 20 10 77 83 56 55 75 37 80 26 44 76 2 54
50
Trang 614 49 34 13 9 75 3 24 4 32 98 71 31 40 16 50 3 83 57 90 92 92 17 85 6 38
29 30 97 38 10 86 70 5 77 65 18 67 52 60 6 35 6 62 99 8 76 84 69 75 50
17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17
17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17
17 17
50
1 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17
17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17
17 83
50
83 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17
17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17
17 1
50
100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100
100 100 100 100 100 100 100 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3
1 3 2
50
1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 2 100 100 100 100 100
100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100
100 100
50
100 1 100 3 100 1 100 3 100 1 100 3 100 1 100 3 100 1 100 3 100 1 100 3
100 1 100 3 100 1 100 3 100 1 100 3 100 1 100 3 100 1 100 3 100 1 100 3
2 100
50
100 98 96 94 92 90 88 86 84 82 80 78 76 74 72 70 68 66 64 62 60 58 56 54
52 50 48 46 44 42 40 38 36 34 32 30 28 26 24 22 20 18 16 14 12 10 8 6 4 2
50
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 75
RA
1: Số lần di chuyển tối thiểu là: 5.
2: Số lần di chuyển tối thiểu là: 1.
3: Số lần di chuyển tối thiểu là: 3.
4: Số lần di chuyển tối thiểu là: 0.
5: Số lần di chuyển tối thiểu là: 0.
6: Số lần di chuyển tối thiểu là: 0.
7: Số lần di chuyển tối thiểu là: 0.
8: Số lần di chuyển tối thiểu là: 105.
9: Số lần di chuyển tối thiểu là: 252.
10: Số lần di chuyển tối thiểu là: 267.
11: Số lần di chuyển tối thiểu là: 359.
12: Số lần di chuyển tối thiểu là: 432.
13: Số lần di chuyển tối thiểu là: 473.
Trang 715: Số lần di chuyển tối thiểu là: 0.
16: Số lần di chuyển tối thiểu là: 65.
17: Số lần di chuyển tối thiểu là: 65.
18: Số lần di chuyển tối thiểu là: 1225.
19: Số lần di chuyển tối thiểu là: 1225.
20: Số lần di chuyển tối thiểu là: 1225.
21: Số lần di chuyển tối thiểu là: 625.
22: Số lần di chuyển tối thiểu là: 325.
BÀI 2: CHINH PHỤC 9 điểm
Có 9 test, mỗi test cho 1 điểm Thực hiện mỗi lúc một test, thời gian thực thi không quá 30 giây
(dữ liệu vào ra có đĩa đi kèm)