15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án)

docx 91 trang ducduy 02/09/2025 70
Bạn đang xem 30 trang mẫu của tài liệu "15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

Tóm tắt nội dung tài liệu: 15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án)

15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án)
 15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án) - DeThiHay.net
def find_max_subarray(arr):
 # Kiểm tra nếu danh sách rỗng if len(arr) == 0:
 return 0
 # Khởi tạo giá trị ban đầu max_sum = arr[0] current_sum = arr[0]
 # Duyệt qua các phần tử từ vị trí thứ 1 đến cuối mảng 
 for num in arr[1:]:
 current_sum = max(num, current_sum + num) # Tính tổng con liên tiếp lớn nhất 
 max_sum = max(max_sum, current_sum) # Cập nhật tổng lớn nhất
 return max_sum 
# Xử lý khác
 DeThiHay.net 15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án) - DeThiHay.net
 ĐỀ SỐ 4
 SỞ GIÁO DỤC VÀ ĐÀO TẠO ĐỀ THI HỌC SINH GIỎI CẤP TRƯỜNG
 HÀ NỘI NĂM HỌC 2022-2023
 MÔN: TIN HỌC
 Thời gian: 90 phút không kể thời gian phát đề
Bài 1 (6 điểm). Viết chương trình nhập vào số KW tính điện tiêu thụ của một số hộ gia đình 
rồi tính số tiền phải trả biết rằng giá điện được tính như sau:
- Từ KW thứ 1 đến 50 giá 1.678 nghìn đồng/KW
- Từ KW thứ 51 đến 100 giá 1.734 nghìn đồng/KW
- Từ KW thứ 101 đến 200 giá 2.014 nghìn đồng/KW
- Từ KW thứ 201 đến 300 giá 2.536 nghìn đồng/KW
- Từ KW thứ 301 đến 400 giá 2.834 nghìn đồng/KW
- Từ KW thứ 401 trở đi giá 2.927 nghìn đồng/KW Ví dụ:
 Dữ liệu nhập vào Kết quả ra màn hình
 10 16780
 51 85634
 200 372000
 250 498800
 369 821146
 468 1108036
Bài 2 (4 điểm). Cho số nguyên dương N.
Yêu cầu: Sử dụng phép chia lấy phần dư kí hiệu là % và phép chia lấy phần nguyên kí hiệu 
là //. Em hãy viết chương trình để tính tổng các chữ số của N.
Ví dụ: N = 163, tổng các chữ số của N là 10.
Bài 3 (6 điểm). Tính diện tích phần tô đậm. Cho 3 hình tròn như hình vẽ. Biết bán kính của 2 
đường tròn nhỏ tâm I1,I2 tương ứng là R1 và R2 được nhập từ bàn phím
Bài 4 (4 điểm). Lập chương trình nhập vào tọa độ 4 đỉnh A(Xa, Ya), B(Xb, Yb), C(Xc, Yc), 
D(Dx, Dy) của 1 tứ giác ABCD. Viết chương trình tính diện tích tứ giác ABCD
 DeThiHay.net 15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án) - DeThiHay.net
 ----------HẾT----------
 DeThiHay.net 15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án) - DeThiHay.net
 ĐÁP ÁN
Bài 1. Tính giá điện (6 điểm)
- Nhập dữ liệu đúng: 0.75 đ
- Mỗi ý rẽ nhánh đúng được 0.75 đ
- In kết quả ra màn hình đúng được 0.75 đ 
Chương trình tham khảo 
so_kw=int(input('Nhập số KW điện tiêu thụ:'))
if so_kw<=50: sotien=so_kw*1678
elif so_kw<=100: 
 sotien=50*1678+(so_kw-50)*1734
elif so_kw<=200: 
 sotien=50*1678+50*1734+(so_kw-100)*2014
elif so_kw<=300: 
 sotien=50*1678+50*1734+100*2014+(so_kw-200)*2536
elif so_kw<=400: 
 sotien=50*1678+50*1734+100*2014+100*2536+(so_kw-300)*2834
else:
 sotien=50*1678+50*1734+100*2014+100*2536+100*2834+(so_kw-400)*2927
print('Số tiền gia đình phải trả là:',sotien)
Bài 2. Tính tổng chữ số của số nguyên dương N (4 điểm)
- Nhập dữ liệu: 0.75 đ
- Gán giá trị khởi tạo tổng s: 0.5 đ
- Xử lý đúng: 2 đ
- In dữ liệu: 0.75 đ 
Chương trình tham khảo:
n=int(input('Nhập số nguyên dương N:')) 
s=0
while n>0: 
 dv=n%10 
 n=n//10 
 s=s+dv
print('Tổng các chữ số của N là:',s)
Bài 3. Diện tích phần tô màu (6 điểm)
- Nhập dữ liệu: 1đ
- Xử lý: 4đ
- In dữ liệu: 1đ 
Chương trình tham khảo:
 DeThiHay.net 15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án) - DeThiHay.net
r1=float(input('Nhập bán kính R1:')) 
r2=float(input('Nhập bán kính R2:')) 
r=r1+r2
s1=r1*r1*3.14 
s2=r2*r2*3.14 
s=r*r*3.14 
dt_tomau=(s-s1-s2)/2
print('Diện tích phần tô màu là:',dt_tomau)
Bài 4. Diện tích tứ giác (4 điểm)
- Nhập dữ liệu: 1đ
- Xử lý: (2.5đ)
+ Tính độ dài AB, BC, CD, DA, AC (1 đ)
+ Tính diện tích tam giác ABC, ACD (1 đ)
+ Tính diện tích tứ giác = tổng diện tích 2 tam giác trên (0.5 đ)
- In dữ liệu: 0.5 đ 
Chương trình tham khảo import math
xa=float(input('Nhập hoành độ điểm A:')) 
ya=float(input('Nhập tung độ điểm A:')) 
xb=float(input('Nhập hoành độ điểm B:')) 
yb=float(input('Nhập tung độ điểm B:')) 
xc=float(input('Nhập hoành độ điểm C:')) 
yc=float(input('Nhập tung độ điểm C:')) 
xd=float(input('Nhập hoành độ điểm D:')) 
yd=float(input('Nhập tung độ điểm D:')) 
AB=math.sqrt((xa-xb)**2+(ya-yb)**2) 
BC=math.sqrt((xc-xb)**2+(yc-yb)**2) 
CD=math.sqrt((xd-xc)**2+(yd-yc)**2) 
DA=math.sqrt((xd-xa)**2+(yd-ya)**2) 
AC=math.sqrt((xc-xa)**2+(yc-ya)**2) 
p1=(AB+AC+BC)/2 
p2=(AC+CD+DA)/2
s_ABC=math.sqrt(p1*(p1-AB)*(p1-AC)*(p1-BC)) 
s_ACD=math.sqrt(p2*(p2-AC)*(p2-CD)*(p2-DA)) s=s_ABC+s_ACD
print('Diện tích tứ giác ABCD là:',s)
 DeThiHay.net 15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án) - DeThiHay.net
 ĐỀ SỐ 5
SỞ GIÁO DỤC VÀ ĐÀO TẠO KỲ THI CHỌN HỌC SINH GIỎI CẤP TỈNH THPT
 LÀO CAI NĂM HỌC 2022-2023
 MÔN THI: TIN HỌC
 Thời gian: 180 phút, không kể thời gian giao đề
 TỔNG QUAN VỀ BÀI THI
 Tên chương trình Tệp dữ liệu vào Tệp dữ liệu ra Điểm
 BAI 01 BAI01.* BAI01.INP BAI01.OUT 4.0
 BAI 02 BAI02.* BAI02.INP BAI02.OUT 4.0
 BÀI 03 BAI03.* BAI03.INP BAI03.OUT 4.0
 BAI 04 BAI04.* BAI04.INP BAI04.OUT 4.0
 BAI 05 BAI05.* BAI05.INP BAI05.OUT 4.0
 Bài thi được chấm bằng phần mềm chấm tự động Themis nên thí sinh cần đặt đúng tên 
tệp vào/ra, tên chương trình đúng định dạng như trên. Dấu * được thay thế bằng PAS hoặc 
CPP tùy theo ngôn ngữ lập trình là Pascal hoặc C++ mà thí sinh sử dụng để làm bài thi. Thời 
gian chạy mỗi test không quá 01 giây (1 s), bộ nhớ sử dụng tối đa 1024 MB.
Thí sinh sử dụng ngôn ngữ lập trình Pascal hoặc C++ để viết chương trình giải các bài toán 
sau:
BÀI 01. (4.0 điểm)
 Minh là một bạn đam mê toán học. Minh định nghĩa ' N là số đẹp nếu tổng các chữ số 
của N bằng tổng các chữ số của tất cả các thừa số nguyên tố được phân tích ra từ N". Để thử 
thách trình độ toán học của các bạn trong lớp. Minh đố các bạn trong lớp giải một bài toán cụ 
thể như sau: Hãy đếm các số đẹp trong đoạn [a,b].
Ví dụ 1: N = 94 là số đẹp vì: 94 = 2 × 47
- Tổng các chữ số của N là: 9 + 4 = 13
- Tổng các chữ số của các thừa số nguyên tố của N là: 2 + 4 + 7 = 13
Ví dụ 2: N = 4937775 là số đẹp vì: 4937775 = 3 × 5 × 5 × 65837
- Tổng các chữ số của N là: 4 + 9 + 3 + 7 + 7 + 7 + 5 = 42
- Tổng các chữ số của các thừa số nguyên tố của N là: 3 + 5 + 5 + 6 + 5 + 8 + 3 + 7 = 42
Yêu cầu: Em hãy giúp các bạn trong lớp viết chương trình giải bài toán của Minh nhé!
Dữ liệu vào: Đọc dữ liệu vào từ tệp BAI01.INP
- Một dòng duy nhất là 2 số nguyên a,b (1 ≤ ≤ ≤ 106).
Dữ liệu ra: Ghi kết quả ra tệp BAI01.OUT
- Là số lượng số đẹp tìm được, nếu không tìm thấy số nào ghi ra 0
 DeThiHay.net 15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án) - DeThiHay.net
Ví dụ:
 BAI01 INP BAI01.OUT
 1 50 18
 20 100 22
Ràng buộc:
- Có 70% số test ứng với 70% số điểm của bài có 1 ≤ ≤ ≤ 103.
- Có 30% số test ứng với 30% số điểm của bài có 1 ≤ ≤ ≤ 106.
BÀI 02. (4.0 điểm)
Ngày nay, việc bảo vệ máy tính cá nhân tránh sự xâm nhập của người khác là yếu tố vô cùng 
quan trọng. Vì vậy, Thành quyết định đặt mật khẩu máy tính của mình trong lần sử dụng đầu 
tiên và ghi lại gợi ý theo một quy ước nhất định để lúc quên có thể tìm lại được. Thành đã 
giấu mật khẩu của mình vào trong một xâu các kí tự liên tiếp gồm các số và chữ cái. Mật 
khẩu đúng sẽ được tìm bằng cách xác định tổng các kí tự là số có trong xâu.
+ Nếu tổng chẵn thì mật khẩu sẽ được viết thêm "Hard" vào trước tổng các chữ số.
+ Nếu tổng lẻ thì sẽ viết thêm "Easy" vào trước tổng các chữ số để tạo thành mật khẩu đăng 
nhập.
Yêu cầu: Cho xâu kí tự s mà Thành đã giấu mật khẩu, bạn hãy giúp Thành tìm lại mật khẩu 
đăng nhập vào máy tính nhé!.
Dữ liệu vào: Đọc dữ liệu vào từ tệp BAI02.INP
- Một dòng duy nhất là xâu kí tự s (số kí tự của s ≤ 1010000).
Kết quả ra: Ghi kết quả ra tệp BAI02.OUT
- Một dòng duy nhất là mật khẩu mà Thành cần dùng để đăng nhập.
Ví dụ:
 BAI02.INP BAI02.OUT Giải thích
Aabc1234abcdh456789bcd0 Easy49 Tổng 
 1 + 2 + 3 + 4 + 4 + 5 + 6 + 7 + 8 + 9 + 
 0 = 49, là một số lẻ nên mật khẩu là: 
 Easy49
Aabcdef12abc34561ghK0 Hard22 Tổng 1 + 2 + 3 + 4 + 5 + 6 + 1 + 0 = 22, 
 là một số chẵn nên mật khẩu là: Hard22
Ràng buộc:
- Có 70% số test ứng với 70% số điểm của bài có s ≤ 1010000.
- Có 30% test tương ứng với số điểm còn lại không có ràng buộc gì thêm.
BÀI 03. (4.0 điểm)
An rất yêu thích số nguyên tố, đồng thời cũng rất yêu thích số 5. An định nghĩa số nguyên tố 
 DeThiHay.net 15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án) - DeThiHay.net
đẹp là số nguyên tố và có tổng các chữ số của nó chia hết cho 5. An rất muốn biết trong đoạn 
[퐿,푅] có bao nhiêu số nguyên tố đẹp. Em hãy lập trình giúp An thực hiện công việc trên.
Dữ liệu vào: Đọc dữ liệu vào từ tệp BAI03.INP
- Dòng đầu tiên chứa số nguyên dương ≤ 100 là số lượng test trong file.
- T dòng tiếp theo, mỗi dòng chứa hai số nguyên dương 퐿,푅(퐿 ≤ 푅) theo thứ tự, phân tách 
nhau bởi dấu cách.
Dữ liệu ra: Ghi kết quả ra tệp BAI03.OUT
- T dòng, mỗi dòng ghi một số là số lượng số nguyên tố đẹp trong đoạn [퐿,푅], tương ứng 
theo thứ tự trong file input. Dòng thứ 푖 trong file output là kết quả của cặp số [퐿,푅] ở dòng 
푖 +1 trong file input tương ứng.
Ví dụ:
 BAI03.INP BAI03.OUT
 2 1
 110 3
 230 3
 2050
Giải thích:
- Trong đoạn [1,10] có 1 số nguyên tố đẹp là: 5.
- Trong đoạn [2,30] có 3 số nguyên tố đẹp là: 5,19(1 + 9 = 10) và 23(2 + 3 = 5).
Trong đoạn [20,50] có 3 số nguyên tố đẹp là: 23,37,41.
Ràng buộc:
- 20% số test có = 1;퐿 ≤ 푅 ≤ 20.
- 20% số test tiếp theo có = 1;퐿,푅 ≤ 103.
- 30% số test tiếp theo có 2 ≤ ≤ 10;퐿,푅 ≤ 105.
- 30% số test cuối cùng có 10 ≤ ≤ 100;0 < 퐿,푅 ≤ 3.106.
BÀI 04. (4.0 điểm)
 Để thành lập đội tuyển HSG môn Tin học của trường năm học 2022-2023. Thầy Hiếu đã 
ra một bài toán để kiểm tra tư duy toán học của các bạn học sinh trong lớp lựa chọn vào đội 
tuyển. Bài toán như sau: Cho dãy số A gồm n phần tử nguyên dương a1,a2,,an. Mỗi phần 
từ có giá trị không vượt quá 109 và 1 < n ≤ 8500. Yêu cầu các bạn trong lớp đếm ra được 
số lượng bộ số tam giác trong dãy số trên (một bộ ba số được gọi là bộ số tam giác, nếu ba số 
này tạo thành ba cạnh của một tam giác nào đó).
Yêu cầu: Em hãy giúp các bạn trong lớp đếm xem trong dãy A có bao nhiêu bộ số tam giác (
ai,aj,ak) với i,j,k đôi một khác nhau.
 DeThiHay.net 15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án) - DeThiHay.net
 Dữ liệu vào: Đọc dữ liệu từ tệp BAI04.INP
 - Dòng đầu là một số nguyên dương 푛.
 - Dòng tiếp theo là các phần tử của dãy A, mỗi phần tử cách nhau một dấu cách.
 Kết quả ra: Ghi kết quả ra tệp BAI04.OUT
 - Số lượng bộ số tam giác, nếu không tìm được bộ nào ghi 0.
 Ví dụ:
 BAI04.INP BAI04.OUT Giải thích
6 Ba bộ số tam giác gồm: (6,7,3),(6,7,8),(6,7,9),
 9
167389 (6,3,8),(6,8,9),(7,3,8),(7,3,9),(7,8,9),(3,8,9)
 Ràng buộc:
 - Có 30% số test ứng với 30% số điểm của bài có 푛 ≤ 100.
 - Có 30% số test ứng với 30% số điểm của bài có 100 < 푛 ≤ 1000.
 - Có 40% số test ứng với 40% số điểm của bài có 1000 < 푛 ≤ 8500.
 BÀI 05. (4.0 điểm)
 Cho số nguyên 퐤 và 2 xâu A,퐁 có độ dài bằng nhau (xâu chỉ gồm ký tự ' ' đến ' ').
 Hai xâu A,B được gọi là tương đồng nếu:
 + Hai xâu có độ dài bằng nhau (|A| = |B|);
 - Kí tự A[i] và B[i] cách nhau không quá 퐤 vị trí trong bảng mã ASCII(i = 1,2,3,, A‖).
 Hãy xác định số cách cắt 퐀 thành 3 xâu (khác rỗng), sau đó ghép tạo thành xâu 퐂 mà xâu 퐂 
 tương đồng bậc 퐤 với xâu 퐁. Hai cách cắt được gọi là khác nhau nếu tồn tại một vị trí cắt 
 khác nhau.
 Dữ liệu vào: Đọc dữ liệu vào từ tệp BAI05.INP
 - Dòng 1: chứa số nguyên 퐤.
 - Dòng 2: chứa xâu 퐀
 - Dòng 3: chứa xâu 퐁.
 Dữ liệu ra: Ghi kết quả ra tệp BAI05.OUT
 - Số cách cắt thỏa mãn.
 Ví dụ:
 BAI05.INP BAI05.0UT
 0 beast betas 1
 1 aaaaa bbbbb 6
 Ràng buộc:
 - Có 40% số test ứng với | | = | | ≤ 300; ≤ 25.
 - Có 30% số test ứng với | | = | | ≤ 3000; = 0.
 DeThiHay.net 15 Đề thi Học sinh giỏi các cấp môn Tin học Lớp 10 (Có đáp án) - DeThiHay.net
- Có 30% số test ứng với | | = | | ≤ 3000; ≤ 25.
 ----------HẾT----------
 ĐÁP ÁN
Quy trình chấm:
- Các máy tính dùng để chấm đã được cài đặt sẵn chương trình Pascal, C, C++ và phần mềm 
chấm tự động Themis.
- Dùng chung phần mềm chấm tự động Themis để chấm bài học sinh với các bộ test mà giáo 
viên ra đề đã sinh (gửi kèm).
- Thực hiện các bước chấm theo thứ tự sau:
Bước 1: Copy bài làm của thí sinh vào máy chấm, kiểm tra bài làm in ra giấy và trên đĩa CD.
Bước 2: Dùng phần mềm chấm tự động Themis để chấm.
- Trường hợp 1: Các câu chạy bình thường lấy kết quả thông qua phần mềm chấm.
- Trường hợp 2: Những câu chạy cho kết quả là 0 điểm (do những lỗi cơ bản như: đặt sai tên 
tệp vào/ra, sai tên bài,...) thì:
- Giám khảo sẽ lập biên bản kèm theo, điều chỉnh và chấm lại bằng phần mềm chấm nhưng 
số điểm không vượt quá điểm thấp nhất của tất cả các bài chạy được trên máy của bài đó đạt 
được.
Ví dụ:
Chấm BÀI 01 có điểm thấp nhất chấm trên máy của tất cả các bài chạy trên máy là: 1,00 đ
Chấm những BÀI 01 sau khi chạy trên máy cho 0 điểm (lỗi cơ bản nêu trên) 4 giám khảo 
điều chỉnh và thực hiện chấm lại trên máy (nếu chạy được) thì số điểm cử BÀI 01 này không 
được quá 1.0 đ điểm (có thể chạy sau khi điều chỉnh cho điểm lớn hơn 1.0đ).
- Những bài sau khi điều chỉnh mà chạy được số điểm thấp hơn số điểm thấp nhất của các 
bài chạy trên máy thì lấy điểm chính bài đó chạy trên máy.
Bước 3: Cộng điểm bài thi = tổng điểm của từng câu sau khi đã chấm bằng Themis.
Phương án làm test:
Bài 1: (4 điểm) có 20 test 퐱 , điểm
- Có 70% số test ứng với 70% số điểm của bài có 1 ≤ ≤ ≤ 103.
- Có 30% số test ứng với 30% số điểm của bài có 1 ≤ ≤ ≤ 106.
Cấu hình phần mềm Themis khi chấm bài như sau:
- Từ test 1 đến test 14 mỗi test 0.2 điểm
- Từ test 15 đến test 20 mỗi test 0.2 điểm
Bài 2: (ퟒ điểm) có 20 test 퐱 , điểm
- Có 70% số test ứng với 70% số điểm của bài có s ≤ 1010000.
- Có 30% test tương ứng với số điếm còn lại không có ràng buộc gì thêm.
Cấu hình phần mềm Themis khi chấm bài như sau:
- Từ test 1 đến test 14 mỗi test 0.2 điểm
 DeThiHay.net

File đính kèm:

  • docx15_de_thi_hoc_sinh_gioi_cac_cap_mon_tin_hoc_lop_10_co_dap_an.docx
  • rarFile Chương trình Đề 14.rar