You are on page 1of 4

SỞ GD&ĐT THANH HÓA ĐỀ GIAO LƯU HỌC SINH GIỎI LẦN 5

NĂM HỌC 2022 - 2023


CỤM CÁC TRƯỜNG THPT
MÔN: TIN HỌC
LAM KINH - LÊ HOÀN - THỌ XUÂN 5 -
Thời gian: 150 phút, không kể thời gian phát đề.
YÊN ĐỊNH 2 - QUẢNG XƯƠNG 4 –
(Đề gồm 4 trang, 5 câu tự luận)
CẦM BÁ THƯỚC

Tổng quan bài thi:


Tên bài File chương trình File dữ liệu vào File kết quả
Bài 1 Căn bậc 2 BAI1.* BAI1.INP BAI1.OUT
Bài 2 Ai khéo tay hơn BAI2.* BAI2.INP BAI2.INP
Bài 3 Số Lucky BAI3.* BAI3.INP BAI3.INP
Bài 4 Thử tài nhanh trí BAI4.* BAI4.INP BAI4.INP
Bài 5 Sinh nhật BAI5.* BAI5.INP BAI5.INP
Dấu (*) trong tên file chương trình biểu thị đuôi file tùy thuộc vào NNLT sử dụng ('py' đối với
NNLT PYTHON, ‘cpp’ đối với NNLT C++,...).
Hãy lập trình giải các bài toán sau:
Bài 1: Căn bậc 2 (6 điểm)
Lớp học của Chí là một lớp học siêu quậy, nhưng lại rất thông minh. Thầy giáo muốn thử tài
năng tính nhẩm nhanh của các bạn trong lớp Chí, đã yêu cầu tất cả các tham gia cuộc thi nhưng
không được sử dụng máy tính. Lần đầu tính toán mà không có máy tính nên các bạn rất lúng túng
khi phải rút gọn căn bậc hai với số lớn. Bạn là một lập trình viên tài ba, bạn hãy viết chương trình
rút gọn căn bậc hai giúp các bạn nhỏ trong lớp học siêu quậy chiến thắng cuộc thi nhé! 
Yêu cầu: Cho số N, bạn hãy rút gọn N thành phần nguyên và căn số sao cho số trong căn là nhỏ
nhất.
Dữ liệu: Vào từ file BAI2.INP chứa số nguyên dương N (1 ≤ N ≤ 109).
Kết quả: Ghi ra file BAI2.OUT hai số nguyên lần lượt là phần nguyên và phần căn đã được
rút gọn.
Ví dụ:
BAI1.INP BAI1.OUT
18 3 2
Bài 2. (5 điểm): Ai khéo tay hơn
Ông Pitor muốn làm cho chú chó cưng Labrado yêu quí của mình một cái mũi mới. Ông
nghĩ sẽ tổ chức một cuộc thi: “Ai khéo tay hơn” cho các học viên trong xưởng mộc của mình. Ông
có N thanh gỗ, thanh gỗ i có độ dài ai. Là người yêu thích toán học ông ta đưa ra một giải thuật sau
để lấy ra thanh gỗ có độ dài cần thiết như sau:
- Nếu còn lại 1 thanh gỗ thì ông ta sẽ lấy thanh gỗ này làm mũi cho Labrado.
- Nếu còn nhiều hơn một thanh gỗ thì ông ta sẽ làm như sau:
Trang 1/4
Bước 1: Chọn ra thanh gỗ i có độ dài a i nhỏ nhất, tiếp theo chọn thanh gỗ j có độ dài a j nhỏ
nhất trong các thanh còn lại.
Bước 2: Nếu ai = aj thì vứt bỏ bớt một thanh, quay về Bước 1.
Bước 3: Nếu ai < aj thì ra sẽ cắt khỏi thanh aj đi một đoạn bằng ai, quay lại Bước 1.
Yêu cầu: Hãy tính độ dài thanh gỗ mà ông ta nhận được để làm mũi cho Labrado.
Giới hạn: 1<=N <=10.000; 1<=ai<=109.
Dữ liệu: Vào từ file văn bản BAI2.INP: Dòng đầu tiên là số N, dòng sau là N số a 1, a2, ….,
an.
Kết quả: Ghi ra file văn bản BAI2.OUT: Số X là độ dài thanh gỗ tìm được.
(Các số trên cùng một dòng của file dữ liệu vào cách nhau ít nhất một ký tự trống)
Ví dụ
BAI2.INP BAI2.OUT
3 1
234

Bài 3 (4 điểm): Số Lucky


Sau một thời gian chơi điện tử, Chí thấy nhàm chán dần mà muốn mình tạo ra được các trò
chơi đó để cho người khác chơi. Sau một thời gian tìm hiểu thì Chí biết cần phải học lập trình mới
tạo ra được các trò chơi đó. Điều đó làm Chí đặt quyết tâm cần phải học lập trình để thỏa lòng
mong ước của mình. Trong quá trình học lập trình, Chí rất thích các số Lucky. Số Lucky là số mà
chỉ chứa các chữ số Lucky (có hai chữ số Lucky là 4 và 7) trong biểu diễn thập phân. Các số Lucky
sắp xếp tăng dần tạo thành dãy số Lucky. Một số số hạng đầu tiên của dãy số Lucky là:
4,7,44,47,74,77,… Biết Chí có niềm yêu thích như vậy, Bá Kiến liền đố Chí tìm số Lucky thứ K
trong dãy. Bài toán thực sự hóc búa với Chí, bạn hãy giúp anh Chí câu hỏi này nhé!. Biết rằng:
Yêu cầu: Cho số n (n 109) duy nhất. Tìm số Lucky thứ n trong dãy.
- Dữ liệu: Từ tệp BAI3.INP gồm số n (n 109) duy nhất.
- Kết quả: ghi vào tệp BAI3.OUT chứa số Lucky tìm được
Ví dụ:
BAI3.INP BAI3.OUT
4 47

Bài 4. (3 điểm) Thử tài nhanh trí

Ở Đất nước Ba Lan xinh đẹp, có nàng công chúa tới tuổi kén chồng. Nhà vua muốn tìm ra một
chàng rể thông minh kiệt xuất xứng đáng với công chúa nên đã đề ra cuộc thi “Thử tài nhanh trí”.
Nội dung của cuộc thi là chàng hoàng tử nào nhanh chóng đưa ra kết quả bài toán của nhà vua trong
thời gian tối đa 1s sẽ được gặp mặt công chúa. Là một nhà lập trình tài ba, bạn hãy giúp các chàng
hoàng tử nhé. Bài toán như sau:

Trang 2/4
Cho số tự nhiên ), ta có thể phân tích thành tích các thừa số nguyên tố với dạng

, trong đó là các số nguyên tố và

. Gọi là tổng các số mũ có giá trị chẵn và là tổng các số mũ có giá trị

lẻ. Chú ý là .

Yêu cầu: Hãy đưa ra giá trị của và .

Dữ liệu cho trong file văn bản BAI4.INP gồm một số tự nhiên (2 ).
Kết quả ghi ra file văn bản BAI4.OUT gồm hai dòng:
 Dòng thứ nhất ghi giá trị của .

 Dòng thứ hai ghi giá trị của .


Ví dụ:
BAI4.INP BAI4.OUT Giải thích
20 2
1

420 2
3

3 0 3=
1

4 2
0

Giới hạn:
 Có 30% số test ứng với ,

 Có 30% số test ứng với ;

 Có 40% số test ứng với .


Bài 5. Sinh nhật (2 điểm)
Trang 3/4
Hàng năm vì muốn có không khí ấm cúng và cũng để tiết kiệm nên Bờm thường tổ chức sinh nhật ở
nhà. Tuy nhiên trước sinh nhật năm nay vài hôm Bờm đã thi đậu vào đội tuyển tin học quốc gia.
Đây là một sự kiện đặc biệt có ý nghĩa nên bạn quyết định mừng ngày sinh nhật của mình tại một
nhà hàng nhà hàng sang trọng và bạn tự nhủ lần này nhất định phải tiêu xài rộng tay hơn. Mọi việc
chuẩn bị đã gần xong nhưng còn một vấn đề làm bạn khá nhức đầu, đó là làm sao chọn được những
món ăn mà mọi người cùng thích. Nhà hàng có M món ăn khác nhau và thú vị ở chỗ là mỗi món ăn
rất nhiều nên có thể đủ cho bao nhiêu người cũng được, vì thế vấn đề là gọi món nào chứ không
phải mỗi món gọi bao nhiêu.
Có tất cả N người đến dự tiệc sinh nhật (bao gồm cả bạn trong đó). Bờm đã tìm hiểu được danh
sách những món ăn yêu thích của từng người và bạn muốn rằng đối với mỗi người phải có ít nhất 2
món mà họ thích. Tuy nhiên sau khi ăn xong còn nhiều tiết mục hấp dẫn khác nên bạn cũng muốn
rằng bất kỳ ai cũng không có quá 2 món ăn yêu thích trong danh sách được đặt trước. Và vấn đề
cuối cùng, đây là tiền của bố mẹ nên cũng không nên tiêu xài quá đáng.
Yêu cầu
Hãy cho biết số tiền ít nhất phải trả để gọi một thực đơn thỏa mãn các yêu cầu trên.
Dữ liệu
- Dòng đầu tiên chứa hai số M, N (M≤30, N≤10)
- Dòng thứ hai chứa M số Pi là giá của món thứ I (Pi≤32767).
- Trong N dòng cuối cùng, dòng thứ k ghi danh sách các món yêu thích của người thứ k.
Kết quả
- Gồm một số duy nhất là kết quả của bài toán, hoặc
- in ra -1 nếu không có cách gọi món nào thỏa mãn. 
Ví dụ:
SINHNHAT.INP SINHNHAT.OUT
53 450
100 150 300 425 200
124
1345
145
Giới hạn:
 Có 30% số test ứng với ,M <= 10; Pi<=1000;;
 Có 30% số test ứng với M<=20; Pi<=10000;
 Có 40% số test không có ràng buộc gì thêm.

---------------------------HẾT---------------------------

Trang 4/4

You might also like