Lập trình giải các bài toán sau Thời gian chạy tối đa cho mỗi bài là 1 giây CÂU 1 6 điểm.. TÍNH TỔNG Thầy giáo cho Thanh một bài toán như sau: “Cho số nguyên dương X 0... Yêu cầu: Hãy li
Trang 1PHÒNG GIÁO DỤC VÀ ĐÀO TẠO THANH THUỶ
ĐỀ THI CHỌN HỌC SINH GIỎI LỚP 9 THCS
NĂM HỌC: 2021 - 2022 MÔN: TIN HỌC
Thời gian: 150 phút, không kể thời gian giao đề
Đề thi có: 02 trang
Phần mở rộng *: pas đối với NNLT Pascal, cpp đối với NNLT C++
B Lập trình giải các bài toán sau (Thời gian chạy tối đa cho mỗi bài là 1 giây)
CÂU 1 (6 điểm) TÍNH TỔNG
Thầy giáo cho Thanh một bài toán như sau: “Cho số nguyên dương X (0<X≤108) Tính tổng S = 3 + 6 + 9 + … + 3X” Thanh loay hoay mãi mà vẫn chưa tìm được cách làm, bạn hãy lập trình giúp Thanh giải bài toán đó nhé?
Dữ liệu vào: Nhập từ bàn phím số nguyên dương X (0<X≤109)
Dữ liệu ra: In ra màn hình tổng S tính được.
Ví dụ:
Bàn phím Màn hình
Giải thích: X = 3 S = 3 + 6 + 9 = 18
Ràng buộc:
Có 80% test tương ứng với 80% số điểm có 0<X≤103
Có 10% test tương ứng với 10% số điểm có 103<X≤106
Có 10% test tương ứng với 10% số điểm có 106<X≤2×108
CÂU 2 (5 điểm) CẶP CHỈ SỐ
Cho dãy a gồm n số nguyên dương Hãy cho biết có bao nhiêu cặp số trong dãy có tổng chia hết cho 3 Nói cách khác, bạn phải đếm xem có bao nhiêu cặp chỉ số i, j (1 ≤ i < j ≤ n) sao cho tổng ai + aj chia hết cho 3
Dữ liệu vào: Nhập từ bàn phím
Dòng 1: Một số nguyên duy nhất n (1 ≤ n ≤ 104)
Dòng 2: Ghi n số nguyên dương a1, a2, , an (1 ≤ ai ≤ 106) là các phần tử của dãy
Dữ liệu ra: In ra màn hình một dòng duy nhất ghi số lượng cặp số của dãy a có tổng chia hết
cho 3
Ví dụ:
5
3 4 2 3 4
3 6 9 12
6
Giải thích:
Ví dụ 1: 3 cặp số tìm được có chỉ số là: (1,4) (2,3) (3,5)
Ví dụ 2: 6 cặp số tìm được có chỉ số là: (1,2) (1,3), (1,4), (2,3) (2,4) (3,4)
Ràng buộc:
Có 60% test tương ứng với 60% số điểm có 0<n, ai≤102
Có 20% test tương ứng với 20% số điểm có 102<n, ai≤103
Có 20% test tương ứng với 20% số điểm có 103<n≤104, 103<ai≤106
Trang 1/2
-Đề chính thức
Trang 2CÂU 3 (5 điểm) CHỮ SỐ NGUYÊN TỐ
Một số nguyên dương S gồm n chữ số (1 ≤ n ≤ 106)
Yêu cầu: Hãy liệt kê các chữ số ai (1 ≤ i ≤ n) là số nguyên tố xuất hiện trong S theo thứ tự từ
trái sang phải, nếu các chữ số tìm được trùng nhau thì chỉ liệt kê lần xuất hiện đầu tiên
Dữ liệu vào: Nhập từ bàn phím một dòng chứa số nguyên dương S.
Dữ liệu ra: Ghi ra một dãy các số ai tìm được thỏa mãn yêu cầu của đề bài Trường hợp không tìm được thì ghi ra số 0
Ví dụ:
Giải thích: Các chữ số nguyên tố xuất hiện trong S là 2 3 2 7 nhưng vì số 2 xuất hiện hai lần
nên chỉ in ra 2 3 7
Ràng buộc:
Có 60% test tương ứng với 60% số điểm có 0<n≤6
Có 20% test tương ứng với 20% số điểm có 6<n≤18
Có 20% test tương ứng với 20% số điểm có 18<n≤106
CÂU 4 (4 điểm) SỐ CHÍNH PHƯƠNG
Sau bài toán tính tổng, thầy giáo dạy Thanh khái niệm: “Số nguyên dương X là số chính phương nếu tồn tại một số nguyên Y thỏa mãn X=Y2” Như vậy, Thanh có thể dễ dàng viết ra dãy A gồm các số nguyên dương là chính phương theo thứ tự từ bé đến lớn như sau: 1,
4, 9, 16, 25, 36… Để xác định một số chính phương là vô cùng dễ dàng Thanh thắc mắc tổng của n sô đầu tiên trong dãy A là bao nhiêu
Yêu cầu: Cho số tự nhiên n, hãy lập trình tính toán giúp Thanh giá trị T là tổng của n số đầu
tiên trong dãy A
Dữ liệu: Nhập vào từ bàn phím một dòng duy nhất là số nguyên dương n ( n ≤ 1010)
Kết quả: In ra màn hình số nguyên duy nhất là số dư của T trong phép chia cho 2021.
Ví dụ:
Giải thích:
Trong ví dụ 1: T= 1+4+9+16=30 Số cần đưa ra là T = 30 mod 2021=30;
Trong ví dụ 2: T= 1+4+9+…400=2870 Số cần đưa ra là T = 2870 mod 2021= 849
Ràng buộc:
Có 30% test tương ứng với 40% số điểm có n 17;
Có 20% test tương ứng với 20% số điểm có n 2×103;
Có 20% test tương ứng với 20% số điểm có n 106
Có 30% test tương ứng với 20% số điểm có n1010; 106<ai≤1018
HẾT Họ và tên thí sinh ………SBD ……
Cán bộ coi thi không cần giải thích gì thêm!
Trang 2/2