You are on page 1of 4

Bài 1.

Số chia hết cho 5


Cho số nguyên dương N. Hãy tìm cách loại bỏ một số ít nhất các chữ số bên phải của
số N để các chữ số còn lại tạo thành một số lớn hơn 0 và chia hết cho 5.
Dữ liệu vào: Từ tệp văn bản DIVFIVE.INP chỉ ghi số nguyên dương N (N ≤ 1018).
Kết quả: Ghi ra tệp DIVFIVE.OUT số chia hết cho 5 tìm được. Nếu bài toán không
có lời giải thì ghi số -1.
Ví dụ :
DIVFIVE.INP DIVFIVE.OUT
1234567 12345
234 -1

Bài 2: Tom và dãy số – TSEQ.PAS


Tom có trò chơi với dãy số như sau: ban đầu dãy chỉ có một số 1, bước thứ nhất
Tom tạo ra dãy mới là 1 2 1, bước thứ hai tạo ra dãy 1 2 1 3 1 2 1, bước thứ ba tạo ra
dãy
1 2 1 3 1 2 1 4 1 2 1 3 1 2 1, các bước tiếp theo thực hiện theo quy luật trên.
Tom muốn biết sau khi thực hiện N bước, thì số thứ K trong dãy số được tạo ra có
giá trị là bao nhiêu?
Bạn hãy viết chương trình giúp Tom trả lời bài hỏi trên.
Dữ liệu vào: Cho trong tệp TSEQ.INP gồm một dòng chứa hai số nguyên N (1 ≤ N ≤
40) và
K (1 ≤ K ≤ 2N +1)
Dữ liệu ra: Ghi ra tệp TSEQ.OUT một số là giá trị của số thứ K tìm được.
Ví dụ:
TSEQ.INP TSEQ.OUT
24 3
35 1
Ghi chú: 60% tests tương ứng 60% số điểm có N <10; 80% tests có N<30

Bài 3: Số ba ước SO3UOC.*


Số ba ước là số chỉ chia hết cho 3 số phân biệt. Ví dụ 4, 9,… là các số ba ước.
Yêu cầu: Cho dãy 𝑁 số nguyên dương 𝐴1 , 𝐴2 , … , 𝐴𝑁 . Kiểm tra số mỗi số có phải là số 3 ba ước
không.

Dữ liệu vào: đọc từ tệp SO3UOC.INP có cấu trúc như sau:


• Dòng đầu ghi số nguyên dương N (1 ≤ 𝑁 ≤ 100.000);
• Dòng thứ hai ghi 𝐴1 , 𝐴2 , … , 𝐴𝑁 cách nhau một dấu cách (0 ≤ 𝐴𝑖 ≤ 1012 ).
Kết quả: ghi ra tệp SO3UOC.OUT gồm N dòng ghi kết quả tương ứng mỗi 𝐴𝑖 . Nếu 𝐴𝑖 là số ba ước thì
ghi YES, ngược lại ghi NO.
Ví dụ:

SO3UOC.INP SO3UOC.OUT
3 YES
4 5 6 NO
NO
• Có 50% test 𝑁 ≤ 1000, 𝐴𝑖 ≤ 106.
Bài 4: Hiệu nguyên tố
Lạ i đế n lượt Tom đó Jerry mọ t loạ t câu đó , mõ i câu đó Tom sễ đưa ra mọ t só nguyên dương T,
đó Jêrry đế m xem có bao nhiêu só nguyên dương J mà J < T và hiệ u T2-J2 là mọ t só nguyên tó .
Bạ n hã y giú p Jerry trả lời cá c câu đó là n nà y nữa nhế .
Dữ liệu vào: cho trong file HIEUNT.INP có cá u trú c:
- Dò ng đà u tiên ghi mọ t só nguyên dương Q là só lượng câu đó (1 ≤ Q ≤ 10)
- Q dò ng tiế p theo, mõ i dò ng ghi mọ t só T (1 ≤ T ≤ 1012)
Dữ liệu ra: ghi vào file HIEUNT.OUT gò m Q dò ng, mõ i dò ng ghi mọ t só là đá p á n củ a mõ i câu đó .
Ví dụ:
HIEUNT.INP HIEUNT.OUT
2 1
4 0
5
Ràng buộc:

40% têsts tương ứng 40% só điể m có T ≤ 102

20% têsts tương ứng 20% só điể m có 102 < T ≤ 103

20% têsts tương ứng 20% só điể m có 103 < T ≤ 107

20% têsts tương ứng 20% só điể m có 107 < T ≤ 1012
Bài 5: Sưu tập xu
Ba bạn An, Bình và Cường đang sưu tập một loại đồng xu cổ. Hiện tại An có 𝑎 đồng
xu, Bình có 𝑏 đồng xu và Cường có 𝑐 đồng xu. Minh muốn gửi cho ba bạn 𝑛 đồng xu,
trong đó gửi cho An 𝑥 đồng, Bình 𝑦 đồng và Cường 𝑧 đồng (0 ≤ 𝑥, 𝑦, 𝑧) để thành bộ
sưu tập sao cho An có 𝑎 + 𝑥 đồng, Bình có 𝑏 + 𝑦 đồng và Cường có 𝑐 + 𝑧 đồng và số
lượng xu của ba bạn đều bằng nhau.
Yêu cầu: Bạn hãy cho biết số lượng xu của Minh gửi cho ba bạn An, Bình và Cường
có tạo được bộ sưu tập như trên không?
Dữ liệu vào: Tệp văn bản XU.INP gồm:
+ Dòng đầu ghi số nguyên dương 𝑚 (𝑚 ≤ 10);
+ Trong 𝑚 dòng tiếp theo, mỗi dòng ghi 4 số nguyên dương 𝑎, 𝑏, 𝑐 và 𝑛 có giá trị
không vượt quá 109 là mỗi bộ test.
Kết quả: Ghi ra tệp văn bản XU.OUT trên 𝑚 dòng. Với dòng thứ 𝑖 (𝑖 = 1 … 𝑚) ghi
‘YES’ nếu bộ test thứ 𝑖 thỏa điều kiện bài toán, ngược lại ghi ‘NO’.
Ví dụ:
XU.INP XU.OUT
3 YES
1236 YES
2358 NO
5678
Ràng buộc:
o Subtask 1: 30% số điểm với 𝑎, 𝑏, 𝑐, 𝑛 ≤ 100.
o Subtask 2: 30% số điểm với 𝑎, 𝑏, 𝑐, 𝑛 ≤ 1000.
o Sub task 3: 40% số điểm với 𝑎, 𝑏, 𝑐, 𝑛 ≤ 109 .

Bài 6: Số xâu nhị phân.


Cho số nguyên dương 𝑛.
Yêu cầu: Có bao nhiêu xâu nhị phân có độ dài 𝑛, chứa hai số 0 liên tiếp.
Dữ liệu vào từ tệp văn bản BAI2.INP gồm một dòng ghi một số nguyên dương 𝑛
(0 ≤ 𝑛 ≤ 55).
Kết quả ghi ra tệp văn bản BAI2.OUT gồm một dòng ghi một số là kết quả tìm
được.
Ví dụ:
BAI2.INP BAI2.OUT
7 94

Bài 7: Giải mã.


Một tin nhắn gồm các chữ số (‘0’-‘9’) và các chữ cái Latin thường (‘a’-‘z’) được
mã hóa thành một xâu số thêo quy ước sau: ‘0’ → 0, ‘1’ → 1, …, ‘9’ → 9; ‘a’ → 10, ‘b’
→ 11, …, ‘z’ → 35.
Để giải mã người ta cho biết số chữ cái 𝑛 có thể dùng để giải mã: 𝑛 = 0 có nghĩa
là bạn không cần dùng chữ cái nào, 𝑛 = 5 thì bạn có thể dùng 5 chữ cái đầu tiên
‘a’, ‘b’, ‘c’, ‘d’ và ‘ê’.
Ví dụ: tin nhắn “1234” và n = 26. Nếu chỉ thay hai chữ số đầu “c34”, nếu chỉ thay
hai chữ số hai và ba “1n4”, còn nếu thay luôn cả hai cặp liên tiếp “cy”.
Yêu cầu: Cho một tin nhắn được mã hóa theo cách trên, hỏi có bao nhiêu cách giải
mã khác nhau?
Dữ liệu vào từ tệp văn bản BAI3.INP:
• Dòng đầu ghi số nguyên dương 𝑛 (0 ≤ 𝑛 ≤ 26)
• Dòng thứ hai ghi xâu số mã hóa có độ dài không quá 65 ký tự.
Kết quả ghi ra tệp văn bản BAI3.OUT: gồm một dòng ghi một số là số cách giải mã
tìm được.
Ví dụ:
BAI3.INP BAI3.OUT
0 1
10237
1 2
10237
26 4
10237

You might also like