Danh mục: Đề 6 Tài liệu bồi dưỡng học sinh giỏi tin 10

Tài liệu bồi dưỡng học sinh giỏi tin 10 đề thi HSG Python đề 6

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 

tai ngay vi tính tấn dân

  • Còn em nào muốn học lý thuyết thì hãy vào đường dẫn phía dưới nhé ! chép từ bài 1 đến bài 21 là giỏi liền kha kha ! có tài liệu pdf tải về thoải mái !
    1. Tự học Python từ cơ bản đến nâng cao đến giải đề thi nhé có tài liệu pdf tải về học 

Đề 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àiFile

chương

trinh

File dữ liệu

vào

File kết quả
Bài 1Phân loại “thời gian” trong ngàyD061*D061.INPD061.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 nD062 *D062.INPD062.OUT
Bài 3In các số âm trong mảngD063 *D063 INPD063 OUT
Bài 4Sắp xếp các từ trong xâu theo thứ tự từ điểnD064.*D064.INPD064.OUT
Bài 5In các số Armstrong có n chữ sốD065 *D065.INPD065.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:
    1. Ngủ: Từ 22 giờ 01 phút đến trước 5 giờ 30 phút.
    2. Chuẩn bị sáng; Từ 05 giờ 30 phút đến trước 07 giờ 00 phút-
    3. Làm việc sáng: Từ 07 giờ 00 phút đến 11 giờ 59 phút.
    4. Nghỉ trưa: Từ 12 giờ 00 phút đến 12 giờ 59 phút.
    5. Làm việc chiều: Từ 13 giờ 00 đến 16 giờ 59 phút.
    6. 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:
inputoutput
06:30Chuan bi sang
12:45Nghi 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ụ:
InputOutput
4 153 -5 10 15
2 112 -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ụ:
InputOutput
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ụ:
InputOutput
Toi Hoc LAP TRINH C++ từ năm 20242024 C++ Hoc LAP TRINH Toi nam tu
Thi HOC SINH GIOI mon Tin HocGIOI 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 “-“
InputOutput
3153 370 371 407
41634 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

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 !