Là người yêu thích toán học ông ta đưa ra một giải thuật sau để lấy ra thanh gỗ có độ dài cần thiết: - Nếu còn lại 1 thanh gỗ thì ông ta sẽ lấy thanh gỗ này làm mũi cho Pinocchio.. - Nếu[r]
(1)SỞ GD& ĐT NGHỆ AN Đề thi chính thức KỲ THI CHỌN HỌC SINH GIỎI TỈNH LỚP 11 NĂM HỌC 2013 - 2014 (Đề thi gồm trang) Môn thi: TIN HỌC- THPT BẢNG A Thời gian: 150 phút (không kể thời gian giao đề) Bài Tên file nguồn Bài Bài Bài Bài THANHGO.PAS MIN.PAS SDD.PAS SUBARR.PAS TỔNG QUAN BÀI THI File Input File Output Thời gian chạy THANHGO.INP THANHGO.OUT giây MIN.INP MIN.OUT giây SDD.INP SDD.OUT giây SUBARR.INP SUBARR.OUT giây Điểm Bài (5 điểm) THANH GỖ Cha Pinocchio muốn làm lại cho Pinocchio cái mũi Ông có N gỗ, gỗ i có độ dài Là người yêu thích toán học ông ta đưa giải thuật sau để lấy gỗ có độ dài cần thiết: - Nếu còn lại gỗ thì ông ta lấy gỗ này làm mũi cho Pinocchio - Nếu còn nhiều gỗ thì ông ta làm sau : Bước 1: Chọn gỗ i có độ dài nhỏ nhất, chọn gỗ j có độ dài aj nhỏ các còn lại Bước 2: Nếu = aj thì vứt bỏ bớt thanh, quay bước Bước 3: Nếu < aj thì ta cắt khỏi aj đoạn ai, quay lại bước Yêu cầu: Hãy tính độ dài gỗ mà ông ta nhận để làm mũi cho Pinocchio Giới hạn: N 10000; 109 Dữ liệu: Vào từ file văn THANHGO.INP: Dòng đầu là số N, dòng sau là N số a1, a2,…, an Kết quả: Ghi file văn THANHGO.OUT: Số X là độ dài gỗ tìm (Các số trên cùng dòng file liệu vào ghi cách ít ký tự trống) Ví dụ: THANHGO.INP THANHGO.OUT 234 Bài (6 điểm) SỐ NHỎ NHẤT Cho số nguyên dương K và xâu ký tự S Xâu S gồm các ký tự là các chữ cái la tinh thường ‘a’ ‘z’ và các chữ số ‘0’ ‘9’, đó có ít K ký tự là chữ số Bạn hãy viết chương trình loại bỏ số ký tự khỏi xâu S cho K ký tự còn lại theo đúng thứ tự đó tạo nên số nhỏ Trong K ký tự còn lại có thể cho phép các chữ số đứng ®Çu Dữ liệu: Vào từ file văn MIN.INP: Dòng thứ là số nguyên dương K (K ≤ 10) Dòng thứ hai ghi xâu S có độ dài nhỏ 250 KÕt qu¶: Ghi file v¨n b¶n MIN.OUT: Gåm mét dßng ghi K ký tù cßn l¹i t¹o nªn sè nhá nhÊt Lop10.com (2) Ví dụ: MIN.INP MIN.OUT 307uv5x1y08mnp Bài (5 điểm) 0108 SỐ ĐƠN ĐIỆU Số a1a2…an gọi là số đơn điệu < ai+1 > ai+2 > ai+1 < ai+2 ( i= 1, n 2) Số có chữ số; số có hai chữ số khác gọi là số đơn điệu có độ dài 1; Ví dụ: Các số 5, 58, 3748, 32435465768 là số đơn điệu vì: Số có chữ số Số 58 có chữ số khác Số 3748 có: < > < Số 32435465768 ta thấy: > < > < 5> < > < > < Yêu cầu: Viết chương trình xác định số chữ số lớn tạo thành số đơn điệu số cho trước D÷ liÖu: Vµo tõ file v¨n b¶n SDD.INP: Gồm số nguyên dương N có không quá 75 chữ số KÕt qu¶: Ghi file v¨n b¶n SDD.OUT: Chứa số nguyên là số chữ số lớn tạo thành đoạn số đơn điệu số N Ví dụ: SDD.INP SDD.OUT 3748 Bài (4 điểm) SUBARRAY Cho dãy gồm N số nguyên a1, a2,…, aN và số nguyên dương K Dãy ai, ai+1,…, aj (1 I j N) là dãy tạo từ các phần tử liên tiếp dãy A, phần tử thứ i và kết thúc phần tử thứ j Yêu cầu: Tìm số lượng dãy A có ít K phần tử Dữ liệu: Vào từ file văn SUBARR.INP: Dòng đầu tiên chứa hai số nguyên N, K (1 K N 4.105) Dòng thứ hai chứa N số nguyên a1, a2,…, aN (ai 109); Kết quả: Ghi file văn SUBARR.OUT: Ghi số lượng dãy tìm (Các số trên cùng dòng file liệu vào ghi cách ít ký tự trống) Ví dụ: SUBARR.INP SUBARR.OUT 42 1212 Hết -Chú ý: Giám thị không giải thích gì thêm Họ và tên thí sinh: .Số báo danh: Lop10.com (3)