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à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:
    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:
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

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 !