1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bộ 6 đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố

17 39 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 2,34 MB

Nội dung

Mời các bạn học sinh cùng tham khảo Bộ 6 đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố để có thêm tài liệu ôn tập chuẩn bị cho kì thi chọn học sinh giỏi sắp tới. Tài liệu đi kèm có đáp án giúp các em so sánh kết quả và tự đánh giá được lực học của bản thân, từ đó đặt ra kế hoạch ôn tập phù hợp giúp các em đạt kết quả cao trong kì thi.

BỘ ĐỀ THI HỌC SINH GIỎI MÔN TIN HỌC LỚP 12 CẤP THÀNH PHỐ MỤC LỤC Đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố năm 2020-2021 - Sở GD&ĐT Hà Nội (Đề số 1) Đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố năm 2020-2021 - Sở GD&ĐT Hà Nội (Đề số 2) Đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố năm 2020-2021 - Sở GD&ĐT Hà Nội (Đề số 3) Đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố năm 2019-2020 - Sở GD&ĐT Hải Phòng Đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố năm 2019-2020 - Sở GD&ĐT Hà Nội Đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố năm 2018-2019 - Sở GD&ĐT Hà Nội SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI KÌ THI CHỌN ĐỘI TUYỂN HỌC SINH GIỎI THÀNH PHỐ LỚP 12 THPT NĂM HỌC 2020 - 2021 Môn thi: TIN HỌC Ngày thi thứ nhất: 19 tháng 10 năm 2020 ĐỀ CHÍNH THỨC Thời gian làm bài: 180 phút (Đề thi có 03 trang, gồm 04 bài) Tởng quan ngày thi thứ STT Tên Tên tệp chương trình Tên tệp liệu vào Tên tệp kết Điểm Thời gian chấm test Bài Tổng ước SUMDIV.* SUMDIV.INP SUMDIV.OUT giây Bài Tam giác nhọn TRIACU.* TRIACU.INP TRIACU.OUT giây Bài Nén số COMNUM.* COMNUM.INP COMNUM.OUT giây Bài Trạm tiếp sóng BTS.* BTS.INP BTS.OUT giây Chú ý: dấu * thay PAS CPP tùy thuộc vào ngơn ngữ lập trình mà thí sinh sử dụng Bài Tổng ước (5 điểm) Số nguyên dương 𝑑 gọi là ước số nguyên dương 𝑁 𝑁 chia hết cho 𝑑 Ví dụ: ước 1, 9; ước 10 1, 2, 10 Yêu cầu: cho hai số nguyên dương 𝐿 𝑅 (𝐿 ≤ 𝑅) Hãy tính tổng tất số nguyên dương là ước số đoạn từ 𝐿 tới 𝑅 (bao gồm 𝐿 𝑅) Dữ liệu: vào từ tệp SUMDIV.INP gồm dòng chứa hai số nguyên dương 𝐿 𝑅 (1 ≤ 𝐿 ≤ 𝑅 ≤ 109 ) Kết quả: ghi tệp SUMDIV.OUT số nguyên tổng tất số nguyên dương là ước số đoạn từ 𝐿 tới 𝑅 Ví dụ: SUMDIV.INP SUMDIV.OUT Giải thích 12 63 Các số là ước số đoạn [9, 12] là: 1, 2, 3, 4, 5, 6, 9, 10, 11 12 (7 không nằm danh sách này 9, 10, 11 12 khơng chia hết cho 8) Ta có + + + + + + + 10 + 11 + 12 = 63 7 Các số là ước Ta có + = Chú ý: số dòng cách dấu cách • Có 20% số test ứng với 𝑅 ≤ 1000; • 25% số test khác ứng với 𝑅 − 𝐿 ≤ 1000; • 25% số test khác ứng với 𝑅 ≤ 106 ; • 30% số test cịn lại khơng có điều kiện thêm Bài Tam giác nhọn (5 điểm) Mít có que tính có nhiều độ dài màu sắc Hơm học hình tam giác nhọn, Mít nghĩ tốn độc đáo có liên quan tới tam giác nhọn que tính Mít chia que tính thành 𝑁 bộ, que tính có độ dài có màu khác Độ dài que tính hai là khác Mít đố bạn đếm xem có tam giác nhọn khác tạo từ 𝑁 que tính Chú ý: cạnh tam giác chọn từ Trang 1/3 que tính khác tức là khơng có tam giác cân và hai tam giác nhọn gọi là giống cặp cạnh tương ứng và màu, ngược lại là khác Yêu cầu: cho độ dài số lượng que tính 𝑁 que tính, lập trình đếm số lượng tam giác nhọn khác tạo Dữ liệu: vào từ tệp TRIACU.INP: • Dịng gồm số nguyên dương 𝑁 (𝑁 ≤ 2000) là số que tính; • 𝑁 dịng sau, dịng thứ 𝑖 chứa hai số nguyên dương 𝐿, 𝐶 mô tả độ dài số lượng que tính thứ 𝑖 (1 ≤ 𝑖 ≤ 𝑁; 𝐿 ≤ 106 ; 𝐶 ≤ 103 ) Kết quả: ghi tệp TRIACU.OUT số nguyên số lượng tam giác nhọn khác Ví dụ: TRIACU.INP TRIACU.OUT Giải thích 4 Có tam giác nhọn tạo từ que tính thứ 2, 3, 2 Chú ý: số dịng cách dấu cách • Có 50% số test ứng với 𝑁 ≤ 200; • 50% số test cịn lại khơng có điều kiện thêm Bài Nén số (5 điểm) Giá trị nén số nguyên dương X kí hiệu là N(X), tính tích chữ số Ví dụ: 𝑁(123) = 6, 𝑁(90) = Yêu cầu: cho hai số nguyên dương 𝐿, 𝑅 (𝐿 ≤ 𝑅), tìm giá trị nén lớn số nguyên không bé 𝐿 không lớn 𝑅 Dữ liệu: vào từ tệp COMNUM.INP gồm dòng chứa hai số nguyên dương 𝐿, 𝑅 Kết quả: ghi tệp COMNUM.OUT số nguyên giá trị nén lớn số thỏa mãn điều kiện đề Ví dụ: COMNUM.INP COMNUM.OUT 15 24 Chú ý: số dịng cách dấu cách • Có 20% số test ứng với 𝐿 ≤ 𝑅 ≤ 106 ; • 30% số test khác ứng với 𝐿 ≤ 𝑅 ≤ 1018 ; • 20% số test khác ứng với 𝐿 ≤ 𝑅 ≤ 10100 ; • 30% số test lại ứng với 𝐿 ≤ 𝑅 ≤ 10100000 Bài Trạm tiếp sóng (5 điểm) Trong thành phố có 𝑁 trạm tiếp sóng Trên thiết kế xây dựng, trạm thứ 𝑖 có tọa độ là (𝑥𝑖 , 𝑦𝑖 ) Giữa hai trạm 𝑖 𝑗, chi phí để liên kết hai trạm với 𝑚𝑖𝑛(|𝑥𝑖 − 𝑥𝑗 |, |𝑦𝑖 − 𝑦𝑗 |) Lãnh đạo thành phố muốn liên kết toàn trạm tiếp sóng với (hai trạm gọi là có liên kết với chúng có liên kết trực tiếp với liên kết qua số trạm trung gian khác) Yêu cầu: giúp lãnh đạo thành phố tính tổng chi phí nhỏ để liên kết tồn 𝑁 trạm tiếp sóng Dữ liệu: vào từ tệp BTS.INP: • Dịng ghi số ngun 𝑁 (2 ≤ 𝑁 ≤ 105 ) số trạm tiếp sóng; Trang 2/3 • 𝑁 dịng tiếp theo, dịng thứ 𝑖 ghi hai số nguyên 𝑥𝑖 𝑦𝑖 (1 ≤ 𝑖 ≤ 𝑁; ≤ 𝑥𝑖 ≤ 109 ; ≤ 𝑦𝑖 ≤ 109 ) tọa độ trạm tiếp sóng thứ 𝑖 Kết quả: ghi tệp BTS.OUT số nguyên là tổng chi phí nhỏ để liên kết trạm tiếp sóng Ví dụ: BTS.INP BTS.OUT Giải thích Liên kết trạm với chi phí Liên kết trạm với chi phí Liên kết trạm với chi phí Liên kết trạm với chi phí Tổng chi phí là: + + + = Chú ý: số dịng cách dấu cách • Có 50% số test ứng với 𝑁 ≤ 103 ; • 50% số test cịn lại khơng có điều kiện thêm Hết -Cán bợ coi thi khơng giải thích thêm; tệp liệu vào đúng đắn không cần kiểm tra; Họ và tên thí sinh: Số báo danh: Chữ kí cán coi thi số 1: Chữ kí cán coi thi số 2: Trang 3/3 SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI KÌ THI CHỌN ĐỘI TUYỂN HỌC SINH GIỎI THÀNH PHỐ LỚP 12 THPT NĂM HỌC 2020 - 2021 Môn thi: TIN HỌC Ngày thi thứ hai: 20 tháng 10 năm 2020 ĐỀ CHÍNH THỨC Thời gian làm bài: 180 phút (Đề thi có 03 trang, gồm 03 bài) Tổng quan ngày thi thứ hai STT Tên Tên tệp chương trình Tên tệp liệu vào Tên tệp kết Điểm Thời gian chấm test Bài Chia điểm DIVPOINT.* DIVPOINT.INP DIVPOINT.OUT giây Bài Đoạn thẳng SEGMENT.* SEGMENT.INP SEGMENT.OUT giây Bài Tô màu COLOR.* COLOR.INP COLOR.OUT giây Chú ý: dấu * thay PAS CPP tùy thuộc vào ngơn ngữ lập trình mà thí sinh sử dụng Bài Chia điểm (7 điểm) Trên hệ trục tọa độ vng góc Oxy, cho tọa độ 𝑁 điểm khơng có ba điểm nào thẳng hàng Yêu cầu: tìm hai điểm 𝑁 điểm để đường thẳng chứa hai điểm chia 𝑁 − điểm lại thành hai phần cho tổng số điểm phần chênh lệnh không Dữ liệu: vào từ tệp DIVPOINT.INP: • Dịng gồm số nguyên dương 𝑁 (𝑁 ≤ 105 ) là số lượng điểm; • 𝑁 dịng sau, dịng chứa hai số nguyên 𝑥, 𝑦 là toạ độ điểm (|𝑥| ≤ 109 ; |𝑦| ≤ 109 ) Kết quả: ghi tệp DIVPOINT.OUT dòng gồm bốn số nguyên toạ độ hai điểm thoả mãn Có thể có nhiều kết quả, ghi kết Ví dụ: DIVPOINT.INP DIVPOINT.OUT 0 1 0 1 1 Chú ý: số dòng cách dấu cách • Có 30% số test ứng với 𝑁 ≤ 100; • 30% số test khác ứng với 𝑁 ≤ 5000; • 40% số test cịn lại ứng với 𝑁 ≤ 105 Bài Đoạn thẳng (7 điểm) Trên trục Ox, cho 𝑁 đoạn thẳng đánh số từ tới 𝑁, đoạn thẳng thứ 𝑖 (1 ≤ 𝑖 ≤ 𝑁) nối điểm có tọa độ nguyên 𝑥 = 𝑎𝑖 và điểm có tọa độ nguyên 𝑥 = 𝑏𝑖 (𝑎𝑖 < 𝑏𝑖 ) Một điểm gọi thuộc đoạn thẳng thứ 𝑖 tọa độ nằm đoạn [𝑎𝑖 , 𝑏𝑖 ] Yêu cầu: Cho biết 𝑁 đoạn thẳng số nguyên dương 𝐾 Hãy viết chương trình trả lời 𝑄 truy vấn Ở truy vấn thứ 𝑗 (1 ≤ 𝑗 ≤ 𝑄), cho biết hai số nguyên 𝑐𝑗 𝑑𝑗 , bạn cần xác định giá trị 𝐿 lớn cho tồn hai số nguyên 𝑢, 𝑣 thỏa mãn: • 𝑐𝑗 ≤ 𝑢 < 𝑣 ≤ 𝑑𝑗 𝑣 − 𝑢 = 𝐿; Trang 1/3 • Tồn khơng 𝐾 đoạn thẳng số 𝑁 đoạn thẳng cho cho điểm 𝑥 có tọa độ nguyên đoạn [𝑢, 𝑣] thuộc đoạn thẳng Nếu khơng tồn 𝑢, 𝑣 𝐿 = Dữ liệu: Vào từ tệp SEGMENT.INP: • Dịng chứa ba số ngun dương 𝑁, 𝑄, 𝐾 (1 ≤ 𝐾 ≤ 𝑁 ≤ 100000, ≤ 𝑄 ≤ 100000); • 𝑁 dịng tiếp theo, dòng thứ 𝑖 (1 ≤ 𝑖 ≤ 𝑁) chứa hai số nguyên 𝑎𝑖 𝑏𝑖 (0 ≤ 𝑎𝑖 < 𝑏𝑖 ≤ 109 ); • 𝑄 dịng cuối cùng, dịng thứ 𝑗 (1 ≤ 𝑗 ≤ 𝑄) chứa hai số nguyên 𝑐𝑗 𝑑𝑗 (0 ≤ 𝑐𝑗 < 𝑑𝑗 ≤ 109 ) Kết quả: Ghi tệp SEGMENT.OUT gồm 𝑄 dòng, dòng thứ 𝑗 (1 ≤ 𝑗 ≤ 𝑄) giá trị 𝐿 lớn cho truy vấn thứ 𝑗 Ví dụ: SEGMENT.INP SEGMENT.OUT Giải thích 4 10 2 Truy vấn 1: chọn [𝑢, 𝑣] = [1, 5] 8 11 10 11 11 Truy vấn 1: chọn [𝑢, 𝑣] = [2, 5] Truy vấn 2: chọn [𝑢, 𝑣] = [2, 5] Truy vấn 3: chọn [𝑢, 𝑣] = [4, 6] Truy vấn 4: chọn [𝑢, 𝑣] = [6, 8] Truy vấn 2: chọn [𝑢, 𝑣] = [6, 10] Truy vấn 3: chọn [𝑢, 𝑣] = [8, 11] Chú ý: số dòng cách dấu cách • Có 20% số test ứng với 𝐾 = 1; 𝑁, 𝑄 ≤ 2000; • 20% số test khác ứng với 𝐾 = 1; • 20% số test khác ứng với 𝐾 = 2; • 20% số test khác ứng với 𝐾 ≤ 30; • 20% số test cịn lại khơng có điều kiện thêm Bài Tô màu (6 điểm) Trong giờ sinh hoạt lớp, cô giáo tổ chức cho bạn học sinh chơi trị chơi “Tơ màu dãy vng” Ban đầu, giáo chuẩn bị dãy ô vuông xếp cạnh và đánh số từ đến 𝑁 tơ tồn màu có số hiệu Trò chơi diễn 𝑀 lượt chơi, lượt gọi học sinh lên tơ màu dải ô vuông: học sinh nghĩ ba số nguyên dương 𝐿, 𝑅, 𝐶 (𝐿 ≤ 𝑅) thực tơ màu có số hiệu 𝐶 từ 𝐿 đến ô 𝑅 (màu ô vuông màu người tô sau) Kết thúc 𝑀 lượt chơi hăng say, dãy ô vuông đẹp, cô giáo bảo bạn ghi lại ba số 𝐿, 𝑅, 𝐶 mà bạn nghĩ lượt chơi và giáo đánh số lại lượt chơi từ đến 𝑀 Sau đó, giáo đố bạn câu hỏi hóc búa: từ danh sách ghi thông tin tô màu bạn học sinh, đưa thứ tự lượt tô màu để từ dãy ô vuông ban đầu thu dãy ô vng trị chơi kết thúc u cầu: giúp bạn học sinh xếp lại thứ tự lượt tô màu Trang 2/3 Dữ liệu: vào từ tệp COLOR.INP: • Dịng chứa hai số ngun dương 𝑁 𝑀 (1 ≤ 𝑁, 𝑀 ≤ × 105 ) số ô vuông số lượt tô màu; • M dịng sau, dịng thứ 𝑖 chứa ba số nguyên 𝐿𝑖 , 𝑅𝑖 , 𝐶𝑖 (1 ≤ 𝑖 ≤ 𝑀; ≤ 𝐿𝑖 ≤ 𝑅𝑖 ≤ 𝑁; ≤ 𝐶𝑖 ≤ × 105 ) mơ tả dịng thứ 𝑖 danh sách ghi thơng tin lượt lượt tơ màu; • Dịng cuối chứa N số nguyên số hiệu màu ô vuông sau bạn tô màu Kết quả: ghi tệp COLOR.OUT dòng gồm 𝑀 số nguyên thứ tự tô màu để thu dãy ô vuông trị chơi kết thúc Có thể có bạn ghi nhầm thơng tin lượt tơ màu nên khơng tìm cách chọn in −1 Nếu có nhiều cách chọn in cách Ví dụ: COLOR.INP COLOR.OUT 1 5 6 5 Chú ý: số dòng cách dấu cách • • • • • • Có 20% số test ứng với ≤ 𝑁, 𝑀 ≤ 9; 20% số test khác ứng với ≤ 𝑁, 𝑀 ≤ 5000 màu lần tô khác nhau; 20% số test khác ứng với ≤ 𝑁, 𝑀 ≤ × 105 màu lần tô khác nhau; 20% số test khác ứng với ≤ 𝑁, 𝑀 ≤ 5000; 10% số test khác ứng với ≤ 𝑁, 𝑀 ≤ × 105 ≤ 𝐶𝑖 ≤ 5; 10% số test cịn lại khơng có điều kiện thêm Hết Cán bợ coi thi khơng giải thích thêm; tệp liệu vào đúng đắn không cần kiểm tra; Họ và tên thí sinh: Số báo danh: Chữ kí cán coi thi số 1: Chữ kí cán coi thi số 2: Trang 3/3 SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI KÌ THI CHỌN HỌC SINH GIỎI THÀNH PHỐ LỚP 12 THPT NĂM HỌC 2020 - 2021 Môn thi: TIN HỌC Ngày thi: 29 tháng 09 năm 2020 Thời gian làm bài: 180 phút (Đề thi có 03 trang) ĐỀ CHÍNH THỨC Tổng quan thi Tên Tên tệp Tên tệp Thời gian Điểm chương trình liệu vào kết tối đa Bài Tìm BAI1.* BAI1.INP BAI1.OUT giây Bài Hoán vị số BAI2.* BAI2.INP BAI2.OUT giây Bài Phát đồng xu BAI3.* BAI3.INP BAI3.OUT giây Bài Dịch chuyển tức thời BAI4.* BAI4.INP BAI4.OUT giây Chú ý: Dấu * thay PAS CPP tùy thuộc vào ngơn ngữ lập trình mà thí sinh sử dụng STT Tên Bài Tìm (6 điểm) Cho hai số nguyên dương 𝐿 𝑅 Yêu cầu: Tìm số nguyên dương 𝑀 (𝐿 ≤ 𝑀 < 𝑅) để chênh lệch tổng số nguyên liên tiếp từ 𝐿 đến 𝑀 tổng số nguyên liên tiếp từ 𝑀 + đến 𝑅 nhỏ Dữ liệu vào từ tệp BAI1.INP: Gồm hai số nguyên dương 𝐿 𝑅 (𝐿 < 𝑅 ≤ 10! ) Kết ghi vào tệp BAI1.OUT: Gồm số nguyên số 𝑀 thoả mãn Ví dụ: BAI1.INP BAI1.OUT Giải thích 27 Tổng từ đến là: 14 Tổng từ đến là: 13 Chênh lệch là: Lưu ý: Mỗi số nguyên cách dấu cách • Có 60% số test: 𝐿 < 𝑅 ≤ 10" ; • Có 40% số test lại: 𝐿 < 𝑅 ≤ 10! Bài Hoán vị số (5 điểm) Trong sách cổ có ghi lại nhiều số bí ẩn mà chúng có mối liên hệ với số 30 Sau thời gian nghiên cứu, chuyên gia tìm cách giải mã số đó: hốn vị chữ số số bí ẩn để thu bội số lớn 30 Yêu cầu: Hãy viết chương trình để giúp chuyên gia giải mã số bí ẩn Dữ liệu vào từ tệp BAI2.INP: Gồm dòng chứa số nguyên dương 𝑁, với 𝑁 có tối đa 10# chữ số số cần giải mã Kết ghi vào tệp BAI2.OUT: Gồm số nguyên số lớn chia hết cho 30 tìm cách hốn vị chữ số 𝑁 Nếu khơng tìm thấy đưa −1 Ví dụ: BAI2.INP BAI2.OUT Giải thích 1002 2100 Số 2100 hoán vị lớn số 1002 chia hết cho 30 12498567859 -1 Không tồn số hoán vị chia hết cho 30 Lưu ý: • Có 50% số test: 𝑁 ≤ 10! ; • Có 50% số test cịn lại: 𝑁 có tối đa 10# chữ số Trang 1/3 Bài Phát đồng xu (5 điểm) Trong trị chơi, có 𝑁 người chơi xếp thành vòng tròn đánh số từ đến 𝑁 theo chiều kim đồng hồ Trước trị chơi bắt đầu, có 𝑀 lượt phát đồng xu cho người chơi với nguyên tắc sau: lượt, chọn ngẫu nhiên hai số nguyên dương 𝐿 𝑅 (𝐿 ≤ 𝑁, 𝑅 ≤ 𝑁), phát đồng xu cho người chơi từ số 𝐿 đến số 𝑅 theo chiều kim đồng hồ Yêu cầu: Cho trước 𝑁, 𝑀 cặp số 𝐿, 𝑅 Tìm số đồng xu lớn mà người chơi phát số lượng người chơi đạt số đồng xu Dữ liệu vào từ tệp BAI3.INP: • Dòng gồm hai số nguyên dương 𝑁 𝑀 số lượng người chơi số lượt phát đồng xu • 𝑀 dịng sau, dịng gồm hai số nguyên dương 𝐿 và 𝑅 mô tả lượt phát đồng xu Kết ghi vào tệp BAI3.OUT: Gồm hai số nguyên dương số đồng xu lớn mà người chơi phát số lượng người chơi đạt số đồng xu Ví dụ: BAI3.INP BAI3.OUT Giải thích 52 24 Số đồng xu người lượt phát đồng xu: 15 Ban đầu: 00000 42 Lượt thứ nhất: 1 1 Lượt thứ hai: 2 2 Vậy số lượng đồng xu lớn có người đồng xu Lưu ý: Mỗi số nguyên cách dấu cách • Có 60% số test: 𝑁, 𝑀 ≤ 10" ; • Có 20% số test khác: 𝑁, 𝑀 ≤ 10$ ; • Có 20% số test lại: 𝑁 ≤ 10! , 𝑀 ≤ 10$ Bài Dịch chuyển tức thời (4 điểm) Trong trị chơi di chuyển bảng số có quy tắc sau: • Bảng số gồm có 𝑁 dịng 𝑀 cột; dòng đánh số 1 đến 𝑁, từ xuống dưới; cột đánh số từ đến 𝑀, từ trái sang phải Ơ dịng thứ 𝑢 giao với cột thứ 𝑣 gọi ô (𝑢, 𝑣) Ô (𝑢, 𝑣) chứa số nguyên 𝐴%& khơng âm • Từ (𝑢, 𝑣) , người chơi di chuyển sang có chung cạnh: (𝑢 − 1, 𝑣), (𝑢 + 1, 𝑣), (𝑢, 𝑣 − 1), (𝑢, 𝑣 + 1) di chuyển sang khác có giá trị khơng thể di chuyển vào có giá trị Mỗi lần di chuyển tốn đơn vị thời gian Yêu cầu: Cho vị trí xuất phát đích, tìm thời gian nhỏ từ xuất phát đích theo luật trị chơi Dữ liệu vào từ tệp BAI4.INP: • Dịng gồm hai số nguyên dương 𝑁 𝑀 số dòng số cột bảng • Dịng thứ hai gồm bốn số 𝑥, 𝑦, 𝑧, 𝑡 mô tả xuất phát (𝑥, 𝑦) đích (𝑧, 𝑡) • 𝑁 dịng sau, dịng gồm 𝑀 số ngun khơng âm mô tả bảng số Kết ghi vào tệp BAI4.OUT: Gồm số nguyên dương số đơn vị thời gian nhỏ để từ ô xuất phát đến đích thoả mãn u cầu Trang 2/3 Ví dụ: BAI4.INP 54 1154 1234 5006 7089 0 10 11 12 13 14 54 1154 1234 5006 7086 0060 3479 BAI4.OUT Giải thích Có thể đỉnh tô đậm: 1, 2, 3, 4, 6, 9, 8, 10, 13, 14 0 0 10 11 12 13 14 Có thể đỉnh tô đậm: 1, 5, 7, 7, 0 0 Lưu ý: Mỗi số nguyên cách dấu cách Dữ liệu đảm bảo ln có đường từ xuất phát đến đích • Có 40% số test: 𝑁, 𝑀 ≤ 100, 𝐴%& < 10! số nguyên dương bảng phân biệt; • Có 20% số test khác: 𝑁, 𝑀 ≤ 1000, 𝐴%& < 10! số ngun dương bảng phân biệt; • Có 20% số test khác: 𝑁, 𝑀 ≤ 1000, 𝐴%& < 10! số nguyên dương bảng lặp lại không q hai lần; • Có 20% số test cịn lại: 𝑁, 𝑀 ≤ 1000, 𝐴%& < 10! số bảng lặp lại nhiều lần Hết -Cán coi thi khơng giải thích thêm; tệp liệu vào tệp văn đắn không cần kiểm tra; làm với tên tệp quy định đề Họ tên thí sinh: Số báo danh: Chữ kí cán coi thi số 1: Chữ kí cán coi thi số 2: Trang 3/3 SỞ GIÁO DỤC VÀ ĐÀO TẠO HẢI PHÒNG KỲ THI CHỌN HỌC SINH GIỎI THÀNH PHỐ LỚP 12 Năm học 2019 – 2020 ĐỀ CHÍNH THỨC ĐỀ THI MƠN: TIN HỌC LẬP TRÌNH BẢNG KHƠNG CHUN (Đề thi gồm: 03 bài; 02 trang) Thời gian: 180 phút (không kể thời gian giao đề) Ngày thi: 19/09/2019 TỔNG QUAN VỀ ĐỀ THI File nguồn nộp File liệu File kết Thời gian test Biểu điểm Bài BAI1.* BAI1.INP BAI1.OUT giây điểm Bài BAI2.* BAI2.INP BAI2.OUT giây điểm Bài BAI3.* BAI3.INP BAI3.OUT giây điểm Phần mở rộng * PAS CPP tùy theo mơi trường lập trình PASCAL C++ Hãy lập trình giải tốn sau: BÀI 1: XÂU ĐỐI XỨNG Một xâu gọi xâu đối xứng có tính chất sau: Nếu đọc từ trái qua phải thu kết giống đọc từ phải qua trái Yêu cầu: Cho 𝑛 xâu, xâu gồm ký tự chữ tiếng Anh in thường Viết chương trình kiểm tra xâu cho có phải xâu đối xứng hay khơng Dữ liệu: Vào từ file văn BAI1.INP - Dòng chứa số nguyên dương 𝑛 (𝑛 ≤ 100000); - 𝑛 dòng tiếp theo, dòng chứa xâu ký tự có độ dài khơng q 255 Kết quả: Ghi file văn BAI1.OUT gồm 𝑛 dòng, dòng ghi ’CO’ xâu tương ứng xâu đối xứng, ghi ‘KHONG’ xâu tương ứng xâu đối xứng Ví dụ: BAI1.INP BAI1.OUT KHONG abbb CO bbabb KHONG bca BÀI 2: XẾP CẶP Công ty sữa Vinamilk muốn tặng quà cho hộ gia đình huyện A Có tất 𝑚 bị đực đánh số từ đến 𝑚 𝑛 bò đánh số từ đến 𝑛 Bò đực thứ 𝑖 có cân nặng 𝑎𝑖 (𝑖 = 𝑚), bị thứ j có cân nặng 𝑏𝑗 (𝑗 = 𝑛) Trong buổi trao quà, ban tổ chức muốn tặng hộ cặp bò Mỗi cặp gồm bò đực bò cái, cân nặng bị đực phải lớn cân nặng bò cái, bò ghép cặp lần Yêu cầu: Em viết chương trình tìm số cặp nhiều thỏa mãn yêu cầu ban tổ chức Dữ liệu: Vào từ file văn BAI2.INP - Dòng chứa hai số nguyên dương 𝑚, 𝑛 ≤ 105; - Dòng chứa 𝑚 số nguyên dương 𝑎1 , 𝑎2 , … , 𝑎𝑚 (𝑎𝑖 ≤ 109 ); - Dòng chứa 𝑛 số nguyên dương 𝑏1 , 𝑏2 , … , 𝑏𝑛 (𝑏𝑗 ≤ 109 ) Các số dòng ghi cách dấu cách Trang 1/2 Kết quả: ghi file văn BAI2.OUT số nguyên số cặp nhiều xếp Ví dụ BAI2.INP 32 123 23 33 325 123 BAI2.OUT Giải thích Bị đực thứ ghép với bị thứ Có thể xếp nhiều cặp - Bò đực thứ ghép với bò thứ - Bò đực thứ ghép với bò thứ - Bò đực thứ ghép với bò thứ Ràng buộc: - 60% số test tương ứng với 60% số điểm có 𝑚 ≤ 103 , 𝑛 ≤ 103 ; - 40% số test tương ứng với 40% số điểm có 𝑚, 𝑛 ≤ 105 BÀI 3: TÍNH BIỂU THỨC Cho hai số nguyên dương 𝑎 𝑏 (𝑏 ≤ 𝑎), em viết chương trình thực phép tính 𝑎 + 𝑏, 𝑎 − 𝑏 𝑎 chia 𝑏 lấy phần nguyên Kết phép tính đưa dạng biểu diễn nhị phân Dữ liệu: Vào từ file văn BAI3.INP - Dòng đầu chứa số nguyên dương 𝑎 (𝑎 ≤ 10250 ); - Dòng thứ hai tên phép toán cong, tru, chia (cong-phép cộng, truphép trừ, chia-phép chia lấy phần nguyên); - Dòng số nguyên dương 𝑏 (𝑏 ≤ 10250 ) Kết quả: Ghi file văn BAI3.OUT dãy số nhị phân biểu diễn kết phép tính Ví dụ BAI3.INP 15 cong 10 17 chia BAI3.OUT 11001 100 Giải thích 15+10=25 Biểu diễn nhị phân 25 11001 17 chia nguyên cho Biểu diễn nhị phân 100 Ràng buộc: - 40% số test tương ứng với 40% số điểm có 𝑎, 𝑏 ≤ 109 kết phép tính nhỏ 109 ; - 30% số test tương ứng với 30% số điểm có phép cộng, phép trừ cho kết lớn 109 ; - 15% số test tương ứng với 15% số điểm cho phép chia có 𝑏 ≤ 106 ; - 15% số test tương ứng với 15% số điểm cho phép chia có 𝑎, 𝑏 ≤ 10250 - HẾT - (Thí sinh khơng sử dụng tài liệu, cán coi thi khơng cần giải thích thêm) Họ tên: Cán coi thi số 1: Số báo danh: Cán coi thi số 2: Trang 2/2 SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI KÌ THI CHỌN HỌC SINH GIỎI THÀNH PHỐ LỚP 12 THPT NĂM HỌC 2019 - 2020 Môn thi: TIN HỌC Ngày thi: 03/10/2019 Thời gian làm bài: 180 phút (Đề thi gồm 02 trang) ĐỀ CHÍNH THỨC Tổng quan bài thi: STT Tên bài Bài Bài Bài Bài ĐẾM ĐOẠN SỐ ĐẶC BIỆT SẮP XẾP TÌM ĐƯỜNG Tên chương trình BAI1.* BAI2.* BAI3.* BAI4.* Tên tệp liệu vào BAI1.INP BAI2.INP BAI3.INP BAI4.INP Tên tệp kết BAI1.OUT BAI2.OUT BAI3.OUT BAI4.OUT Điểm 5 Thời gian chạy tối đa/1 test giây giây giây giây Chú ý: Dấu * thay PAS CPP tùy thuộc vào ngơn ngữ lập trình mà thí sinh sử dụng BÀI 1: ĐẾM ĐOẠN Cho số nguyên dương 𝑁 Đếm xem có cặp số nguyên 𝑎, 𝑏 (0 < 𝑎 ≤ 𝑏) để tổng số nguyên đoạn [𝑎, 𝑏] 𝑁 Hai đoạn khác là hai đoạn có phần tử khác Dữ liệu vào từ tệp BAI1.INP: Gồm số nguyên dương 𝑁 (0 < 𝑁 < 1015 ) Kết ghi vào tệp BAI1.OUT: Gồm số nguyên dương là kết bài tốn Ví dụ: BAI1.INP BAI1.OUT Giải thích Có ba đoạn số thoả mãn: [2, 4], [4, 5], [9, 9] Lưu ý: - Có 40% số điểm tương ứng với 𝑁 ≤ 104 - Có 30% số điểm tương ứng với 104 < 𝑁 ≤ 108 BÀI 2: SỐ ĐẶC BIỆT Số đặc biệt là số nguyên dương 𝑁 cho thêm chữ số 𝑎 vào đầu chữ số 𝑏 vào cuối số N số có giá trị gấp k lần số 𝑁 ban đầu, tức 𝑎𝑁𝑏 = 𝑘 × 𝑁 Yêu cầu: Cho trước ba số nguyên 𝑎, 𝑏, 𝑘 Tìm số đặc biệt 𝑁 (𝑁 ≤ 1018 ) Dữ liệu vào từ tệp BAI2.INP: Gồm dòng ghi ba số 𝑎, 𝑏, 𝑘 (0 ≤ 𝑎, 𝑏 ≤ 9; 10 ≤ 𝑘 ≤ 200) cách dấu cách Kết ghi vào tệp BAI2.OUT: Gồm số 𝑁 kết toán Trong trường hợp có nhiều số 𝑁 thỏa mãn, đưa số bé Cho biết với liệu vào, ln tồn kết Ví dụ: BAI2.INP 91 BAI2.OUT Giải thích 91 × = 455 Lưu ý: Có 50% số điểm tương ứng với 𝑁 ≤ 109 BÀI 3: SẮP XẾP Cho dãy số có 𝑁 phần tử 𝑎1 , 𝑎2 , … , 𝑎𝑁 Dãy số đẹp bậc 𝐾 là mô tả sau: - Dãy số có 𝐾 nhóm, nhóm có số phần tử 𝑁/𝐾 phần tử dãy số (từ 𝑎1 đến 𝑎𝑁/𝐾 ) vào 𝑛ℎó𝑚 1, 𝑁/𝐾 phần tử vào 𝑛ℎó𝑚 2, …, 𝑁/𝐾 phần tử cuối vào nhóm 𝐾 - 𝑁ℎó𝑚 ≥ 𝑛ℎó𝑚 ≥ ⋯ ≥ 𝑛ℎó𝑚 𝐾 với 𝑛ℎó𝑚 𝑖 ≥ 𝑛ℎó𝑚 𝑗 phần tử nhỏ 𝑛ℎó𝑚 𝑖 lớn phần tử lớn 𝑛ℎó𝑚 𝑗 1/2 Yêu cầu: Ta cần di chuyển số lần nhỏ phần tử dãy số ban đầu để trở thành dãy số đẹp bậc 𝐾 Cách di chuyển phần tử là lấy phần tử khỏi dãy số sau chèn vào vị trí dãy số Dữ liệu vào từ tệp BAI3.INP: Dòng chứa hai số nguyên dương N K (0 < K ≤ N ≤ 105 , N chia hết cho K) Dòng thứ hai chứa N số nguyên dương (|ai | ≤ 109 ) - Kết ghi vào tệp BAI3.OUT: Ghi tổng số lần di chuyển thoả mãn yêu cầu tốn Ví dụ: BAI3.INP Giải thích BAI3.OUT 42 5194 Di chuyển số xuống cuối dãy: 5941 Lưu ý: Có 50% số điểm tương ứng với 10 < 𝑁 ≤ 5000 BÀI 4: TÌM ĐƯỜNG Trung tâm khảo sát hang động XYZ có robot tự hành Robot tự di chuyển, vẽ sơ đồ, chụp hình ảnh lịng hang động truyền thơng tin trung tâm Thông tin đường hang động gửi trung tâm chuỗi chữ 𝐷, 𝑇, 𝑁, 𝐵 tương ứng với việc theo hướng Đông, Tây, Nam, Bắc la bàn gắn robot (trong đơn vị khoảng cách B hướng không thay đổi quy chiếu mặt phẳng nằm ngang với mặt đất, hướng T quy định hình bên) Trong lần robot thực nhiệm vụ khảo sát hang D động mới, sau thời gian di chuyển (trong trình di chuyển điểm N hang robot qua, lại nhiều lần) truyền thông tin trung tâm, robot gặp cố và di chuyển điểm xuất phát là cửa hang Trung tâm muốn đưa robot cửa hang cách sử dụng đoạn đường an toàn mà robot qua cách nhanh Yêu cầu: Cho chuỗi ký tự thông tin đường robot gửi trung tâm Hãy tìm độ dài đường ngắn từ cửa hang đến vị trí robot sử dụng thông tin đường Dữ liệu vào từ tệp BAI4.INP: Một dòng gồm chuỗi ký tự 𝐷, 𝑇, 𝑁, 𝐵 ghi liên tiếp Số ký tự không 10000 Kết ghi vào tệp BAI4.OUT: Độ dài đường ngắn tìm Ví dụ: BAI4.INP DDTNDBBT Giải thích BAI4.OUT Hình ảnh đường đường ngắn đến vị trí robot: Lưu ý: Có 50% số test độ dài xâu nhỏ 1000 Hết -Cán coi thi không giải thích thêm; tệp liệu vào tệp văn đúng đắn không cần kiểm tra; làm với tên tệp đúng quy định đề Họ và tên thí sinh: Số báo danh: Chữ kí cán coi thi số 1: Chữ kí cán coi thi số 2: 2/2 SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI KÌ THI CHỌN HỌC SINH GIỎI THÀNH PHỐ LỚP 12 THPT NĂM HỌC 2018 - 2019 Môn thi: TIN HỌC t 14 tháng năm 2018 : 180 ph t (Đề thi gồm 02 trang) ĐỀ CHÍNH THỨC T n qu n t T n STT Bài T n c ươn trình T n tệp l ệu v o T n tệp kết r Đ m BAI1.* BAI2.* BAI3.* BAI4.* BAI1.INP BAI2.INP BAI3.INP BAI4.INP BAI1.OUT BAI2.OUT BAI3.OUT BAI4.OUT 5 Tích số Mu xăn G trị dãy Hộ n ị quốc tế T gian tố đ giây giây giây giây Chú ý: Dấu * thay PAS CPP tùy thuộc vào ngơn ngữ lập trình mà thí sinh sử dụng Bài Tích số (6 điểm) Cho số u ê dươ (1 ≤ ≤ 1018) Yêu cầu: ì số u ê ất k ô vượt v tíc củ số u ê tố ê t ếp Dữ l ệu v o từ tệp BAI1.INP: - Dò đầu c ứ số u ê dươ t tươ ứ số ộ test (1 ≤ t ≤ 15); - Trong t dò t ếp t eo ỗ dò c ứ số u ê dươ Kết r v o tệp BAI1.OUT: Gồ t dò kết củ t ộ test tươ ứ , ếu k tì t ấ số t ỏ ã -1 Ví dụ: BAI1.INP BAI1.OUT G ả t íc 30 30 = x x 36 Lưu ý: 50% số test ứ vớ 50% số đ ể củ có ≤ 106 Bài Mu xăn (5 điểm) Để t đổ k ô k í s u ữ v ệc că t ẳ , A dự đị đ du ịc n ngày ằ c ếc xe riêng củ ì t ứ , c ếc xe cầ i xă G á xă t ứ pi đồ c o ột xă Mỗ A có t ể u số ượ xă k ô c ế, ếu k ô dù ết để dành cho ngày hôm sau Yêu cầu: Hãy giúp An đị ượ xă u ỗ để đáp ứng yêu cầu với tổng số tiền Dữ liệu vào từ tệp BAI2.INP: - Dò chứa số u ê dươ 𝑛 ≤ 105; - Dòng thứ hai chứa 𝑛 số u ê dươ 𝑎1, 𝑎2, … , 𝑎n (𝑎i ≤ 105, ≤ i ≤ n); - Dòng thứ ba chứa 𝑛 số u ê dươ 𝑝1, 𝑝2, … , 𝑝n (𝑝i ≤ 105, ≤ i ≤ n) Kết ghi vào tệp BAI2.OUT: Một số nguyên tổng số tiền (tính bằ đồ ) để mua xă t eo p ươ tì Ví dụ: BAI2.INP BAI2.OUT G ả t íc 8000 Ngày mua lít (3000đ), ngày mua lít (5000đ), ngày mua lít (0đ) 3000 1000 3000 Lưu ý: 50% số test ứ vớ 50% số đ ể củ có ≤ 103 Bài G trị dãy (5 điểm) C o dã số u ê dươ a1, a2, … , an Vớ ỗ dã co al , al+1 , … , ar ( ≤ ≤ r ≤ ), v số u ê dươ s ọ ks số ầ xuất ệ củ s tro dã co al , al+1 , … , r G trị củ dã co trê tính ằ tổ củ tất tíc (ks)2 × s Ví dụ, cho dãy số u ê dươ 1, 1, 2, 2, 1, 3, 1, Dãy l =2, r = có k1 = 3, k2 = 2, k3 = 1, vậ trị củ ó 32 × + 22 × + 12 × = 20 Yêu cầu: Cho t dã co , ã xác đị trị củ ỗ dãy 1/2 Dữ l ệu v o từ tệp BAI3.INP: - Dò đầu c ứ số u ê , t (1 ≤ ≤ × 105, ≤ ≤ × 105) ; - Dị t ứ c ứ n số u ê a1, a2, … , an (1 ≤ ≤ 106) ; - Trong t dò t ếp t eo ỗ dò c ứ số u ê l, r ( ≤ ≤ r ≤ ) ô tả ột dãy Kết r v o tệp BAI3.OUT: Gồ t dò , dò t ứ k ột số u ê trị củ dã co t ứ k (1 ≤ k ≤ t) Ví dụ: BAI3.INP BAI3.OUT G ả t íc 2 32 3=1 ×1+1 ×2 121 6 = 22 × + 12 × 12 13 Lưu ý: 50% số test ứ vớ 50% số đ ể củ có ≤ 2000, t ≤ 2000, ≤ i ≤ 106 Bài Hộ n ị quốc tế (4 điểm) ro ột ộ ị quốc tế có đạ ểu t dự đá số từ đế ộ ị có sử dụ ữ k ác u đá số từ đế Mỗ đạ ểu ết ột số ữ tro ữ H đạ ểu u v v có t ể tr o đổ vớ u ếu ết ột ô ữc u oặc đạ ểu k ác p ê dịc K ột đạ ểu u uố chào đạ ểu v, đạ ểu u ó to c o ằ ột ữ đạ ểu ết v đạ ểu ết ô ữ ểu c o ếu đạ ểu v k ểu c o (v k ết ữ i), có ột số đạ ểu k ác p ê dịc tru để đạ ểu v ểu c o từ đạ ểu u Gọ uv số đạ ểu có t ể ểu c o củ đạ ểu u d c o đạ ểu v Yêu cầu: Vớ ỗ cặp u, v (1≤ u ≤ , ≤ v ≤ ) , xác đị số dươ auv ỏ ất Dữ l ệu v o từ tệp BAI4.INP: - Dò đầu c ứ số u ê dươ v ,2≤ ≤ 300, ≤ ≤ 300 - Trong m dòng t ếp t eo, dò t ứ (1 ≤ ≤ ) c ứ số u ê dươ ki số ượ ô ữ đạ ểu t ứ ết, t ếp t eo ki số ệu ô ữ t eo t ứ tự tă , ≤ ki ≤ Kết r v o tệp BAI4.OUT: Gồ dị cột vị trí dị t ứ u, cột t ứ v số uv tìm được, 1≤ u ≤ , ≤ v ≤ ro uu = ếu đạ ểu u v v k t ể ểu c o củ auv = -1 Ví dụ: BAI4.INP BAI4.OUT G ả t ích 3 - Đạ ểu c o tớ đạ ểu ằ sử dụ ô 2 ữ có đạ ểu ểu c o v 2 3 - Đạ ểu c o tớ đạ ểu ằ sử dụ ô 2 3 ữ S u đạ ểu c u ể c os ô ữ để đạ ểu ểu Có đạ ểu ểu c o 1, 2, 12 = a21 = Lưu ý: 50% số test ứ vớ 50% số đ ể củ có ≤ ≤ 100, ≤ ≤ 100 Hết -án oi thi h ng gi i th h g th m; cá tệp liệu vào tệp văn làm ài v i t n tệp đ ng nh qu đ nh đề Họ v tê t í s C ữ kí cá ộ co t số 2/2 n đ ng đ n h ng n iểm tr Số áo d C ữ kí cá ộ co t số 2: ... 2) Đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố năm 2020-2021 - Sở GD&ĐT Hà Nội (Đề số 3) Đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố năm 2019-2020 - Sở GD&ĐT Hải Phòng Đề thi. .. LỤC Đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố năm 2020-2021 - Sở GD&ĐT Hà Nội (Đề số 1) Đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố năm 2020-2021 - Sở GD&ĐT Hà Nội (Đề số... 2019-2020 - Sở GD&ĐT Hải Phòng Đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố năm 2019-2020 - Sở GD&ĐT Hà Nội Đề thi học sinh giỏi môn Tin học lớp 12 cấp thành phố năm 2018-2019 - Sở GD&ĐT Hà

Ngày đăng: 27/05/2021, 11:13

TỪ KHÓA LIÊN QUAN

w