BỘ GIÁO DỤC VÀ ĐÀO TẠO KỲ THI CHỌN HỌC SINH GIỎI QUỐC GIA ĐỀ THI CHÍNH THỨC LỚP 12 THPT NĂM 2011 Môn: TIN HỌC Thời gian: 180 phút (không kể thời gian giao đề) Ngày thi thứ hai: 12/01/2011 (Đề thi có 03 trang, gồm 03 bài) TỔNG QUAN NGÀY THI THỨ HAI Tên File chương trình File liệu vào File kết Bài Nối điểm đen trắng BWPOINTS.* BWPOINTS.INP BWPOINTS.OUT Bài Trò chơi chẵn lẻ PARIGAME.* PARIGAME.INP PARIGAME.OUT Bài Nâng cấp mạng UPGRANET.* UPGRANET.INP UPGRANET.OUT Dấu * thay PAS CPP ngôn ngữ lập trình sử dụng tương ứng Pascal C++ Hãy lập trình giải toán sau: Bài (6 điểm) Nối điểm đen trắng Trên trục số thực cho n điểm đen n điểm trắng hoàn toàn phân biệt Các điểm đen có toạ độ nguyên a1, a2, , an điểm trắng có toạ độ nguyên b1, b2, , bn Người ta muốn chọn k điểm đen k điểm trắng để nối điểm đen với điểm trắng cho k đoạn thẳng tạo đôi điểm chung Yêu cầu: Cho toạ độ n điểm đen a1, a2, , an toạ độ n điểm trắng b1, b2, , bn, tìm giá trị k lớn thoả mãn yêu cầu nêu Dữ liệu: Vào từ file văn BWPOINTS.INP: • Dòng thứ chứa số nguyên dương n (n ≤ 105); • Dòng thứ hai chứa số a1, a2, , an (| a i | ≤ 109, i = 1, 2, , n); • Dòng thứ ba chứa số b1, b2, , bn (| b i | ≤ 109, i = 1, 2, , n) Các số dòng ghi cách dấu cách Kết quả: Ghi file văn BWPOINTS.OUT số nguyên số k lớn tìm Ví dụ: BWPOINTS.INP BWPOINTS.OUT 3 -3 -1 Ràng buộc: 50% số tests ứng với 50% số điểm có ≤ n ≤ 100 Trang 1/3 Bài (7 điểm) Trò chơi chẵn lẻ Trò chơi chẵn lẻ trò chơi hai đối thủ mô tả sau: Xuất phát từ bảng trò chơi bảng vuông kích thước n × n gồm n dòng n cột Các dòng bảng đánh số từ đến n, từ xuống Các cột bảng đánh số từ đến n, từ trái qua phải Trên ô bảng ghi số nguyên Hai đối thủ luân phiên thực nước Đối thủ đến lượt chơi phép xoá dòng cuối tổng số dòng số chẵn cột cuối tổng số cột số chẵn Đối thủ thắng người xoá ô cuối bảng sau thực nước tổng số dòng cuối tổng số cột cuối bảng số lẻ Yêu cầu: Cho biết bảng số trò chơi, xác định xem người trước có cách chơi giành phần thắng hay không? Dữ liệu: Vào từ file văn PARIGAME.INP: • Dòng thứ chứa số nguyên dương k số lượng liệu; • Tiếp theo k nhóm dòng, nhóm dòng tương ứng với liệu có dạng: o Dòng thứ chứa số nguyên dương n (n ≤ 500) o Dòng thứ i số n dòng chứa n số nguyên dương (mỗi số không vượt 109) số dòng thứ i bảng trò chơi, i = 1, 2, , n Các số dòng ghi cách dấu cách Kết quả: Ghi file văn PARIGAME.OUT gồm k dòng, dòng kết tương ứng với liệu theo thứ tự xuất file liệu vào: ghi thông báo ‘YES’ người trước có cách chơi giành phần thắng ‘NO’ trường hợp ngược lại Ví dụ: PARIGAME.INP PARIGAME.OUT 1 2 2 YES NO 2 3 2 2 2 2 2 2 Ràng buộc: 50% số tests ứng với 50% số điểm có n ≤ 50 Bài (7 điểm) Nâng cấp mạng Một hệ thống gồm n máy tính đánh số từ tới n kết nối thành mạng m đoạn cáp mạng đánh số từ tới m Đoạn cáp mạng thứ i có thông lượng wi kết nối hai máy ui, vi cho phép truyền liệu theo hai chiều hai máy Một dãy máy x1, x2, , xp, hai máy xj xj+1 (j = 1, 2, , p − 1) có đoạn cáp nối, gọi đường truyền tin từ máy x1 tới máy xp Thông lượng đường truyền tin xác định thông lượng nhỏ số thông lượng đoạn cáp mạng đường Trang 2/3 truyền Giả thiết mạng kết nối cho có đường truyền tin hai máy hai máy có không đoạn cáp mạng nối chúng Người ta muốn nâng cấp mạng cách tăng thông lượng số đoạn cáp nối mạng Để tăng thông lượng đoạn cáp mạng thêm lượng ∆ (∆ > 0) ta phải trả chi phí ∆ Việc nâng cấp mạng phải đảm bảo sau hoàn tất, thông lượng đoạn cáp i thông lượng đường truyền tin có thông lượng lớn từ máy ui tới máy vi Yêu cầu: Tìm phương án nâng cấp đoạn cáp mạng cho tổng chi phí nâng cấp nhỏ Dữ liệu: Vào từ file văn UPGRANET.INP • Dòng thứ chứa hai số nguyên dương n, m (n, m ≤ 105); • Dòng thứ i số m dòng chứa ba số nguyên dương ui, vi, wi (wi ≤ 106), i = 1, 2, , m Các số dòng ghi cách dấu cách Kết quả: Ghi file văn UPGRANET.OUT số nguyên tổng chi phí nâng cấp theo phương án tìm Ví dụ: UPGRANET.INP UPGRANET.OUT 1 4 5 4 6 3(+2) 4(+3) Ràng buộc: 50% số tests ứng với 50% số điểm có n ≤ 100 - Hết • • Thí sinh không sử dụng tài liệu Cán coi thi không giải thích thêm Trang 3/3 KỲ THI CHỌN HỌC SINH GIỎI QUỐC GIA LỚP 12 THPT NĂM 2011 BỘ GIÁO DỤC VÀ ĐÀO TẠO HƯỚNG DẪN CHẤM ĐỀ THI CHÍNH THỨC Môn: TIN HỌC Ngày thi thứ hai: 12/01/2011 (Gồm 01 trang) TỔNG QUAN NGÀY THI THỨ HAI Tên File chương trình File liệu vào File kết Bài Nối điểm đen trắng BWPOINTS.* BWPOINTS.INP BWPOINTS.OUT Bài Trò chơi chẵn lẻ PARIGAME.* PARIGAME.INP PARIGAME.OUT Bài Nâng cấp mạng UPGRANET.* UPGRANET.INP UPGRANET.OUT Bài Nối điểm đen trắng (6 điểm) • • • • Có 50% số tests ứng với 50% số điểm có ≤ n ≤ 100 Thuật toán tham lam trực tiếp với thời gian tính O(n2) đạt 50% số điểm Thuật toán tham lam với tổ chức liệu tốt với thời gian tính O(n log n) đạt 100% số điểm Giới hạn thời gian: giây Bài Trò chơi chẵn lẻ (7 điểm) • • • • Có 50% số tests ứng với 50% số điểm có ≤ n ≤ 50 Thuật toán qui hoạch động trực tiếp với thời gian tính O(n3) đạt 50% số điểm Thuật toán phát triển dựa qui hoạch động với tiền xử lý liệu với thời gian tính O(n2) đạt 100% số điểm Giới hạn thời gian: giây Bài Nâng cấp mạng (7 điểm) • Có 50% số tests ứng với 50% số điểm có n ≤ 100 • Thuật toán phát triển dựa thụât toán Floyd tìm đường ngắn cặp đỉnh với thời gian tính O(|V|3 + |E|) đạt 50% số điểm Thuật toán phát triển dựa thuật toán Dijkstra với hàng đợi có ưu tiên để tìm đường ngắn cặp đỉnh với thời gian tính O(|V| (|V| + |E|)log |V| + |E|) đạt 60% số điểm Thuật toán phát triển dựa xây dựng khung thông lượng lớn nhờ thuật toán Kruskal cài đặt với cấu trúc liệu tập không giao nhau, kết hợp với tổ chức liệu tìm kiếm với thời gian tính O(|E|log |V|) đạt 100% số điểm Giới hạn thời gian: giây • • • - Hết - Trang 1/1