Tài liệu bồi dưỡng học sinh giỏi tin 10 đề thi HSG Python đề 6
Giải đề thi học SINH GIỎI Tin học
5/5 - (2 bình chọn)
Thầy biết các em đang trong giai đoạn ôn thi nước rút để chuẩn bị cho kỳ thi cấp huyện sắp tới! nên thầy đã chuẩn bị thêm đề ôn thi số 6 này để làm Tài liệu bồi dưỡng học sinh giỏi tin 10 đề thi HSG Python ! Các em nên tự giải trước khi xem lời giải nhé ! Để mình rèn luyện tư duy logic có thể phán đoán các dạng đề chuẩn bị cho kỳ thi tốt hơn !
Đây đã là đề thi số 6 đề và đáp án thi HSG Tin Python cấp huyện
Các bạn bạn nào chưa giải tới thì vui lòng chọn lại bắt đầu từ Giải đề 1 các bạn nhé !
Vì từ thầy để các đề từ dễ đến nâng cao các bạn nhé! Mình mới vô đừng giải đề khó quá mà phải giải từ dễ trước từ từ sẽ giỏi lên từng ngày các bạn nhé!
Các đề ôn thi để chuẩn bị thi Cấp Huyện thì các em vào đường dẫn phía dưới để tham khảo giúp thầy nhé!
Đề 6 thi python 150 phút bồi dưỡng học sinh giỏi tin học 10 cấp huyện
Thứ tự
Tên bài
File
chương
trinh
File dữ liệu
vào
File kết quả
Bài 1
Phân loại “thời gian” trong ngày
D061*
D061.INP
D061.OUT
Bài 2
Đếm số nguyên chia hết cho 5 và in những số nguyên chia hết cho 5 từ m đến n
D062 *
D062.INP
D062.OUT
Bài 3
In các số âm trong mảng
D063 *
D063 INP
D063 OUT
Bài 4
Sắp xếp các từ trong xâu theo thứ tự từ điển
D064.*
D064.INP
D064.OUT
Bài 5
In các số Armstrong có n chữ số
D065 *
D065.INP
D065.OUT
Dấu * được thay thế bởi PY, CPP của ngôn ngữ lập trình được sử dụng tương ứng là Python hoặc C++
Bài 1: (4 điểm) Phân loại “thời gian” trong ngày
Diễn giải:
Ngủ: Từ 22 giờ 01 phút đến trước 5 giờ 30 phút.
Chuẩn bị sáng; Từ 05 giờ 30 phút đến trước 07 giờ 00 phút-
Làm việc sáng: Từ 07 giờ 00 phút đến 11 giờ 59 phút.
Nghỉ trưa: Từ 12 giờ 00 phút đến 12 giờ 59 phút.
Làm việc chiều: Từ 13 giờ 00 đến 16 giờ 59 phút.
Thư giãn: Từ 17 giờ 00 phút đến 22 giờ 00 phút.
Input: Chuổi hh:mm cho biết giờ và phút hiện tại (00<=hh<24,00<=mm<60)
Output: “Thời gian” theo mô tả trên
Ví dụ về input và output:
input
output
06:30
Chuan bi sang
12:45
Nghi trua
Bài 2: (4 điểm) Đếm số nguyên chia hết cho 5 và in những số nguyên chia hết cho 5 từ m đến n
Diễn Giải:
Nhập vào hai số nguyên m và n (m<n).
Cho biết từ m đến n có bao nhiêu số chia hết cho 5, là những số nào?
Input: Hai số nguyên dương m và n (0<m, n<106), trên một dòng, cách nhau bởi dấu cách.
Output:
Số thứ nhất là số lượng các số chia hết cho 5 từ m đến n, dấu cách, dấu gạch (-), dấu cách,
sau đó là các số chia hết cho 5 từ m đến n, phân tách nhau bởi dấu cách.
Nếu không có số chia hết cho 5 từ m đến n thi in 0, dấu cách, dấu gạch (-), dấu cách.
Ví dụ:
Input
Output
4 15
3 -5 10 15
2 11
2 -5 10
Bài 3: (4 điểm) In các số âm trong mảng
Diễn giải:
Nhập vào một mảng số nguyên a: a0,a1,a2,….an In các số âm trong mảng theo thứ tự xuất hiện.
Input: Một dòng chứa các số nguyên có giá trị tuyệt đối không vượt quá 105, cách nhau bởi dấu cách.
Output:
Các số âm trong mảng trên cùng một dòng, theo thứ tự xuất hiện, cách nhau bởi dấu cách.
Nếu không có số âm nào trong mảng thì in
Ví dụ:
Input
Output
9 -6 3 8 10 -7 -2
-6 -7 -2
7 3 8 0 2
–
Bài 4: (4 điểm) Sắp xếp các từ trong xâu theo thứ tự từ điển
Diễn giải:
Nhập vào một xâu s.
Sắp xếp các từ trong xâu theo thứ tự từ điển
Input:
Xâu s trên một dòng, có độ dài không vượt quá 105, chứa các ký tự là chữ cái, chữ số, ký hiệu và các dấu cách
Output: In các từ đã sắp xếp trên một dòng, cách nhau bởi dấu cách
Ví dụ:
Input
Output
Toi Hoc LAP TRINH C++ từ năm 2024
2024 C++ Hoc LAP TRINH Toi nam tu
Thi HOC SINH GIOI mon Tin Hoc
GIOI HOC Hoc SINH Thi Tin mon
Bài 5: (4 điểm) In các số Armstrong có n chữ số
Diễn giải:
Nhập vào số nguyên dương n. In các số Armstrong có n chữ số
Số Armstrong là một số có k chữ số mà tổng các chữ số lũy thừa k của nó bằng chính nó.
Chẳng hạn, 153 có 3 chữ số và 13 + 53 + 33 =153 ( 1 mũ 3 + 5 mũ 3 + 3 mũ 3 = 153 ); 1634 có 4 chữ số và 14+64+34+44= 1634 ( 1 mũ 4 + 6 mũ 4 + 3 mũ 4 + 4 mũ 4 = 1634 )
Input: Một số nguyên n (0<n<10)
Output:
Các số Armstrong có n chữ số trên một dòng, cách nhau bởi dấu cách theo thứ tự từ bé đến lớn.
Nếu không có số nào thì in dấu “-“
Input
Output
3
153 370 371 407
4
1634 8208 9474
Đáp án bài 1: Phân loại “thời gian” trong ngày
import sys
sys.stdin=open('D061.INP','r')
sys.stdout=open('D061.OUT','w')
a=input()
a=a.split(":")
h=int(a[0])
p=int(a[1])
if (22<=h<=24 and 1<=p<=59 ) or (1<=h<5 and 0<=p<60) or (h==5 and 0<=p<30):
print('Ngu')
elif (5==h and 30<=p<=59 ) or (h==6 and 0<=p<=59):
print('Chuan bi sang')
elif 7<=h<=11 and 0<=p<=59:
print('Lam viec sang')
elif 12==h and 0<=p<=59:
print('Nghi trua')
elif 13<=h<=16 and 0<=p<=59:
print('Lam viec chieu')
elif 17<=h<=22 and 0<=p<=59:
print('Thu gian')
Đáp án bài 2: Đếm số nguyên chia hết cho 5 và in những số nguyên chia hết cho 5 từ m đến n
import sys
sys.stdin=open('D062.INP','r')
sys.stdout=open('D062.OUT','w')
m,n=map(int,input().split())
dem=0
for i in range(m,n+1):
if i%5==0:
dem+=1
print(dem,'-',end=' ',sep=' ')
for i in range(m,n+1):
if i%5==0:
print(i,end=' ')
Đáp án bài 3: In các số âm trong mảng
import sys
sys.stdin=open('D063.INP','r')
sys.stdout=open('D063.OUT','w')
a=list(map(int,input().split()))
dem=0
for i in range(len(a)):
if a[i]<0:
dem+=1
print(a[i],end=' ')
if dem==0:
print('-')
Đáp án bài 4: Sắp xếp các từ trong xâu theo thứ tự từ điển
import sys
sys.stdin=open('D064.INP','r')
sys.stdout=open('D064.OUT','w')
s=input()
s=s.split()
s.sort()
for i in s:
print(i,end=' ')
Đáp án bài 5: In các số Armstrong có n chữ số
import sys
sys.stdin=open('D065.INP','r')
sys.stdout=open('D065.OUT','w')
def Armstrong(n):
tong=0
s=str(n)
for i in range(len(s)):
tong+=(int(s[i]))**len(s)
return tong==n
n=int(input())
a=[]
for i in range(10**(n-1),10**n):
if Armstrong(i):
a.append(i)
if len(a)==0:
print('-')
else:
print(*a)
Nếu bạn thấy hay ! xin bạn 1 phút ! vui lòng đánh giá 5 sao cho trang website của chúng tôi ! để có động lực làm thêm nhiều bài hay nữa ! cảm ơn quý khách nhé !
Miễn phí 10% khóa học lập trình Python online “Hãy đăng ký ngay để được khuyến mãi !”
Qua đường dây nóng hỏi: 093.717.9278 ( Gặp Thầy Tấn Dân Cử Nhân Công Nghệ Thông Tin)
Thầy Dân chuyên bồi dưỡng môn tin học thi học sinh giỏi cấp huyện, cấp tỉnh, ôn luyện thi vào Trường Chuyên Tin.
Khóa học Python online từ cơ bản đến nâng cao
Trung tâm tin học Tấn Dân
Thông tin Khuyến mãi giảm giá học phí!
Giảm giá ưu đãi 100.000 đ khi đăng ký 2 bạn sinh viên học sinh trở lên !
Giảm 15% khi tham gia 3 bạn sinh viên học sinh trở lên
Lưu ý :
Để nhận Ưu đãi học viên vui lòng đăng ký qua số điện thoại gặp Thầy Dân qua số điện thoại & Zalo: 0937.179.278
Học phí tham gia khóa học Online 1.600.000 trong 7 tháng.
Học từ cơ bản đến nâng cao và đến giải đề thi cấp Huyện.
Trong nhiều chính sách ưu đãi học viên chỉ áp dụng chính sách ưu đãi cao nhất!
Có nhận học viên thường xuyên
Thời gian học từ thứ 3 và thứ 5; từ 2 giờ đến 4 giờ hàng tuần.
Hãy đăng ký ngay để nhận ưu đãi đến hết ngày 10 tháng 10 năm 2024 !
Vi Tính Tấn Dân
Mình rất đam mê về máy vi tính và máy in. Và mình đã đeo đuổi ước mơ và làm việc về máy vi tính mới đây mà đã 15 năm. Mình thích chia sẻ mọi kiến thức và kinh nghiệm mà mình có được cho tất cả các bạn ! Trong khi mình viết nếu có điều gì thiếu sót mong các bạn thông cảm cho mình nhé ! Mình Cám ơn trước !
View Comments
Có bạn nào có câu hỏi gì không ? các bạn vui lòng đặt câu hỏi thầy sẽ giải đáp cho các em nhé !