You are on page 1of 3

ĐỀ THI THỬ CHUYÊN TIN – LẦN 2

+ Thời gian: –> 22h00 ngày 12/5/2023


+ Đối tượng tham gia: Học sinh lớp 9 thi vào Chuyên Tin và tất
cả những ai muốn tham gia
+ Link đề thi thử: http://hpcode.pro/contest/thithu2023
+ Lưu ý:
- Mỗi bài được nộp tối đa 02 lần.
- Bài nộp chỉ được chấm với ví dụ trong thời gian thi

Bài 1: Con sói nhỏ luyện tập (cago.*)


Trên một sân vận động có một hình vuông lớn, trên hình vuông lớn có một con sói nhỏ, con sói nhỏ
đang đứng ở một góc của hình vuông. Con sói sẽ chạy dọc trên các cạnh của hình vuông để luyện tập cho
môn thi chạy tiếp sức trong kì SEA games 32 tại Cam-Pu-Chia. Sau khi chạy được 𝑛 (m) thì con sói nhỏ
dừng lại.
Yêu cầu: Hãy cho biết con sói nhỏ dừng lại trên cạnh hay trên góc của hình vuông, biết rằng độ dài mỗi
cạnh hình vuông là 𝑎 (m)
Dữ liệu vào:
+ Một dòng ghi lần lượt hai số nguyên dương 𝑛, 𝑎 (1 ≤ 𝑎, 𝑛 ≤ 106 )
Kết quả:
+ Nếu con sói đứng trên cạnh hình vuông thì ghi “ca” ngược lại ghi “go”;
Ví dụ:
Input Output Input Output
100 5 go 100 26 ca
Bài 2: Ôi, sai rồi! (wrong.*)
Po là một nhân viên thu ngân lâu năm có nhiều kinh nghiệm. Suốt mấy chục năm nay Po luôn được các
sếp đánh giá tốt. Tuy nhiên máy tính mới là công cụ giúp đỡ Po trong những năm qua chứa không phải kinh
nghiệm vì công việc của Po chỉ là quét mã vạch để tính tiền sau đó khách hàng thanh toán Online. Bỗng
một ngày, đó chính là ngày hôm nay mất điện mà không ai báo trước để Po báo bệnh xin nghỉ việc, vì mất
điện thì Po phải làm phép tính khi tính tiền cho khách hàng, phải làm phép tính để trả lại tiền thừa,…việc
tính toán không phải là thế mạnh của Po.
Một khách hàng mua gói kẹo có giá 𝑎 đồng đến quầy thu ngân đưa cho Po 𝑏 đồng để thanh toán, Po tính
toán rồi trả lại tiền thừa cho khách hàng tuy nhiên Po đã tính toán sai. Cụ thể, số tiền Po trả lại có cùng số
lượng chữ số với kết quả đúng 𝑏 − 𝑎 nhưng sai ở hàng chữ số cao nhất.
Yêu cầu: Hãy cho biết giá trị lớn nhất của số tiền mà Po trả lại cho khách?
Dữ liệu vào:
+ Một dòng ghi hai số nguyên 𝑎, 𝑏 (1 ≤ 𝑎 < 𝑏 ≤ 109 ).
Kết quả:
+ Ghi số nguyên là kết quả của bài toán.
Ví dụ:

http://hpcode.pro Trang 1
Ví dụ 1 Ví dụ 2
Input Output Input Output
23 500 977 101 200 89
Gải thích ví dụ 1: Số tiền đúng mà Po cần trả là 500 − 23 = 477, tuy nhiên Po trả sai ở hàng chữ số
cao nhất nên các kết quả có thể là 177, 277, 377, 577, 677, 777, 877, 977; trong đó giá trị lớn nhất là 977
Bài 3: Phiếu giảm giá (coupon.*)
Trong ngày sinh nhật, Po được các bạn tặng 𝑘 phiếu giảm giá mua hàng ở cửa hàng Thế giới ô tô. Khi
sử dụng một phiếu giảm giá, Po được giảm 𝑥 đồng, Po có thể áp dụng nhiều phiếu giảm giá khi mua một
mặt hàng. Nếu Po áp dụng 𝑡 phiếu giảm giá khi mua một mặt hàng có giá 𝑦 đồng thì số tiền mà Po phải trả
khi mua mặt hàng đó là max (𝑦 − 𝑡 × 𝑥, 0);
Ví dụ 1: Po áp dụng 2 phiếu giảm giá, mỗi phiếu được giảm 4 đồng khi mua một mặt hàng có giá 10
đồng thì số tiền Po phải trả cho mặt hàng đó là max(10 − 2 × 4, 0) = 2 đồng.
Ví dụ 2: Po áp dụng 4 phiếu giảm giá, mỗi phiếu được giảm 5 đồng khi mua một mặt hàng có giá 16
đồng thì số tiền Po phải trả cho mặt hàng đó là max(16 − 4 × 5, 0) = 0 đồng.
Cho biết Po mua 𝑛 mặt hàng, các mặt hàng có giá lần lượt là 𝑎1 , 𝑎2 , … , 𝑎𝑛 . Hãy giúp Po xác định số tiền
ít nhất mà Po cần thanh toán sau khi áp dụng 𝑘 phiếu giảm giá?
Dữ liệu vào:
+ Dòng đầu tiên ghi 3 số nguyên dương 𝑛, 𝑘, 𝑥 lần lượt cho biết số lượng mặt hàng Po cần mua, số phiếu
giảm giá và số tiền được giảm khi áp dụng 1 phiếu giảm giá.
+ Dòng thứ hai ghi lần lượt các số nguyên 𝑎1 , 𝑎2 , … , 𝑎𝑛 cho biết giá của 𝑛 hàng.
Kết quả:
+ Ghi một số nguyên cho biết số tiền ít nhất Po cần trả khi áp dụng 𝑘 phiếu giảm giá để mua 𝑛 mặt hàng.
Ví dụ:
Input Output
546 5
1 10 3 7 5
Giải thích ví dụ:
+ KHÔNG áp dụng phiếu giảm giá vào các mặt hàng có giá 1 và 3;
+ Áp dụng 2 phiếu vào mặt hàng có giá 10 → số tiền phải trả là: max(10 − 2 × 6,0) = 0
+ Áp dụng 1 phiếu vào mặt hàng có giá 7 → số tiền phải trả là: max(7 − 1 × 6,0) = 1
+ Áp dụng 1 phiếu vào mặt hàng có giá 5 → số tiền phải trả là: max(5 − 1 × 6,0) = 0
Như vậy tổng số tiền phải trả là: 1 + 3 + 0 + 1 + 0 = 5
Ràng buộc:
+ Có 70% số test tương ứng 70% số điểm có 𝑛 ≤ 2000;
+ Có 30% số test còn lại tương ứng 30% số điểm có 𝑛 ≤ 105 .
Bài 4: Cặp số nguyên tố (pqprime.*)
Cho số nguyên dương 𝑛 (1 ≤ 𝑛 ≤ 1018 ), hãy tìm hai số nguyên tố phân biệt sao cho 𝑛 = 𝑝2 × 𝑞.
Dữ liệu vào:
+ Dòng đầu tiên ghi số nguyên dương 𝑡 (1 ≤ 𝑡 ≤ 10) cho biết số lượng bộ dữ liệu;

http://hpcode.pro Trang 2
+ 𝑡 dòng tiếp theo, dòng thứ 𝑖 cho biết một số nguyên dương 𝑛.
Dữ liệu vào luôn đảm bảo có kết quả và kết quả là duy nhất.
Kết quả:
+ Với mỗi số nguyên dương 𝑛 trong dữ liệu vào đưa ra kết quả hai số nguyên tố 𝑝 và 𝑞 tìm được.
Ví dụ:
Input Output
3 3 11
99 35
45 72
98
Ràng buộc:
+ Có 50% số test tương ứng 50% số điểm có 𝑛 ≤ 500;
+ Có 30% số test khác tương ứng 30% số điểm có 𝑛 ≤ 104 ;
+ Có 20% số test còn lại tương ứng 20% số điểm không có ràng buộc gì thêm.

============HẾT============

http://hpcode.pro Trang 3

You might also like