Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

readme.md

Bài tập nâng cao

Ví dụ 1: Chuyển đổi chuỗi nhị phân sang chuỗi hexa

Viết chương trình chuỗi đổi từ chuỗi như phần sang chuỗi hexa.
Chuỗi nhị phần có độ dài không viết quá 10^4 ký tự

📖 Ví dụ

  • Với n = 10 thì kết quả là 2, vì 10(2) = 2(16)
  • Với n = 1110 thì kết quả là E, vì 1110(16) = E(16)
  • Với n = 0101011 thì kết quả là 2B, vì 0101011(16) = 2B(16)
📝Test case 🧪

Testcase 1:

Input Output
10 2

Testcase 2:

Input Output
1110 E

Testcase 3:

Input Output
0101011 2B

Testcase 4:

Input Output
10101010101111111 1557F

Testcase 5:

Input Output
0001010101011111111000000000 155FE00

Testcase 6:

Input Output
011001100101010101010101010101010101010101011111111111111 CCAAAAAAAABFFF

Testcase 7:

Input Output
1010101010101010101001101010101010101000000000001010100000111101001010101000 AAAAA6AAA800A83D2A8

Testcase 8:

Input Output
001010101010101010101011111111110101010000000110100111100101010100101000000111110010101010101010101010111111111101010100000001101001111001010101001010000001111100101010101010101010101111111111010101000000011010011110010101010010100000011111 2AAAABFF54069E55281F2AAAABFF54069E55281F2AAAABFF54069E55281F

Testcase 9:

Input Output
0 0

Testcase 10:

Input Output
1 1

🟢 Bài giải mẫu 📚

Chưa có bài giải.
Nếu cần thiết có thể liên hệ facebook Phan Đức Hải


Ví dụ 2: Đọc số tiếng Việt

Cho một số nguyên N (1 ≤ n ≤ 10^1000).
Hãy in ra cách đọc tiếng Việt của số tự nhiên đó.

📖 Ví dụ

  • Với n = 5 thì kết quả là "Năm"
  • Với n = 12 thì kết quả là "Mười hai"
  • Với n = 27 thì kết quả là "Hai mươi bảy"
  • Với n = 123 thì kết quả là "Một trăm hai mươi ba"
  • Với n = 9302 thì kết quả là "Chín ngàn ba trăm lẻ hai"
  • Với n = 2938473 thì kết quả là "Hai triệu chín trăm ba mươi tám ngàn bốn trăm bảy mươi ba"
  • Với n = 938473648 thì kết quả là "Chín trăm ba mươi tám triệu bốn trăm bảy mươi ba ngàn sáu trăm bốn mươi tám"
📝Test case 🧪

Testcase 1:

Input Output
5 Năm

Testcase 2:

Input Output
12 Mười hai

Testcase 3:

Input Output
27 Hai mươi bảy

Testcase 4:

Input Output
123 Một trăm hai mươi ba

Testcase 5:

Input Output
9302 Chín ngàn ba trăm lẻ hai

Testcase 6:

Input Output
2938473 Hai triệu chín trăm ba mươi tám ngàn bốn trăm bảy mươi ba

Testcase 7:

Input Output
938473648 Chín trăm ba mươi tám triệu bốn trăm bảy mươi ba ngàn sáu trăm bốn mươi tám

Testcase 8:

Input Output
736283948372635 Bảy trăm ba mươi sáu ngàn tỷ hai trăm tám mươi ba tỷ chín trăm bốn mươi tám triệu ba trăm bảy mươi hai ngàn sáu trăm ba mươi năm

Testcase 9:

Input Output
346873683658343645747 Ba trăm bốn mươi sáu tỷ tỷ tám trăm bảy mươi ba triệu tỷ sáu trăm tám mươi ba ngàn tỷ sáu trăm năm mươi tám tỷ ba trăm bốn mươi ba triệu sáu trăm bốn mươi năm ngàn bảy trăm bốn mươi bảy

Testcase 10:

Input Output
2222222222222222222222222
2222222222222222222222222
2222222222222222222222222
2222222222222222222222222
2222222222222222222222222
2222222222
Hai trăm hai mươi hai triệu tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai triệu tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai triệu tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai triệu tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai triệu tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai triệu tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai triệu tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai tỷ tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai triệu tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai tỷ tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai triệu tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai tỷ tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai triệu tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai tỷ tỷ tỷ tỷ tỷ hai trăm hai mươi hai triệu tỷ tỷ tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ tỷ tỷ hai trăm hai mươi hai tỷ tỷ tỷ tỷ hai trăm hai mươi hai triệu tỷ tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ tỷ hai trăm hai mươi hai tỷ tỷ tỷ hai trăm hai mươi hai triệu tỷ tỷ hai trăm hai mươi hai ngàn tỷ tỷ hai trăm hai mươi hai tỷ tỷ hai trăm hai mươi hai triệu tỷ hai trăm hai mươi hai ngàn tỷ hai trăm hai mươi hai tỷ hai trăm hai mươi hai triệu hai trăm hai mươi hai ngàn hai trăm hai mươi hai

Testcase 11:

Input Output
0 Không

🟢 Bài giải mẫu 📚

Chưa có bài giải.
Nếu cần thiết có thể liên hệ facebook Phan Đức Hải


Ví dụ 3: Số lượng số không cuối cùng

Viết phương thức in số lượng chữ số 0 cuối cùng của n!
(1 ≤ n ≤ 10^18).

📖 Ví dụ

  • Với n = 5 thì kết quả là 1, vì 5! = 120 có 1 chữ số 0 cuối cùng
  • Với n = 12 thì kết quả là 2, vì 12! = 479001600 có 2 chữ số 0 cuối cùng
📝Test case 🧪

Testcase 1:

Input Output
5 1

Testcase 2:

Input Output
12 2

Testcase 3:

Input Output
17 3

Testcase 4:

Input Output
26 6

Testcase 5:

Input Output
48 10

Testcase 6:

Input Output
236 57

Testcase 7:

Input Output
74823 18700

Testcase 8:

Input Output
736283948372635 184070987093150

Testcase 9:

Input Output
19283746253648293 4820936563412061

Testcase 10:

Input Output
11111111111111111 2777777777777765

Testcase 11:

Input Output
999999999999999999 249999999999999977

Testcase 12:

Input Output
82739402938472634 20684850734618145

Testcase 13:

Input Output
27122712271227129 6780678067806772

Testcase 14:

Input Output
42763948273847263 10690987068461806

Testcase 15:

Input Output
1 0

🟢 Bài giải mẫu 📚

Chưa có bài giải.
Nếu cần thiết có thể liên hệ facebook Phan Đức Hải


Ví dụ 4: Xoá số để được số lớn nhất

Nhập vào một số nguyên dương N (1 ≤ N ≤ 10^1000) và một số tự nhiên k (0 ≤ k ≤ độ dài N). Hãy xoá trong N đúng k ký tự để để kết quả sau khi xoá thu được số lớn nhất có thể.

📖 Ví dụ

  • Với n = 123 và k = 1 thì kết quả là 23, vì trong tất cả các cách xoá đi 1 ký tự trong 123 thì cách tốt nhất là xoá số 1 để thu được số 23 lớn nhất.
  • Với n = 8791 và k = 2 thì kết quả là 91
  • Với n = 938493 và k = 3 thì kết quả là 993
  • Với n = 939293234 và k = 5 thì kết quả là 9994
📝Test case 🧪

Testcase 1:

Input Output
123 1 23

Testcase 2:

Input Output
8791 2 91

Testcase 3:

Input Output
8791 1 891

Testcase 4:

Input Output
938493 3 993

Testcase 5:

Input Output
939293234 5 9994

Testcase 6:

Input Output
8349247345 8 97

Testcase 7:

Input Output
9392473482700434 10 998744

Testcase 8:

Input Output
8394827364859684738495837238825345 23 99988825345

Testcase 9:

Input Output
384757834698572369874521638947263985673249086573908723689746238794623897648297356827946589723648972365897236589726894756213879462387524353456364563847578346985723698745216389472639856732490865739087236897462387946238976482973568279465897236489723658972365897268947562138794623875243534563645638475783469857236987452163894726398567324908657390872368974623879462389764829735682794658972364897236589723658972689475621387946238752435345636456 150 999999999999999999987689472639856732490865739087236897462387946238976482973568279465897236489723658972365897268947562138794623875243534563645638475783469857236987452163894726398567324908657390872368974623879462389764829735682794658972364897236589723658972689475621387946238752435345636456

Testcase 10:

Input Output
123456789 0 123456789

🟢 Bài giải mẫu 📚

Chưa có bài giải.
Nếu cần thiết có thể liên hệ facebook Phan Đức Hải


Ví dụ 5 Câu hỏi cuối cùng olympia 2023

Nhập vào một số nguyên N (2 ≤ n ≤ 10^5).
Hãy tìm N số nguyên dương phân biệt có tổng nhỏ nhất và thoã mãn tổng của K số bất kì trong N số đó đều chia hết cho K. Với mọi K từ 2 đến N-1. Hãy tìm và in ra tổng của N số nguyên đó, lấy phần dư cho 10^9+7

📖 Ví dụ

  • Với n = 3 thì kết quả là 9, vì 3 số thoã mãn bài toán là 1, 3, 5, tổng là 9
  • Với n = 4 thì kết quả là 40, vì 4 số thoã mãn bài toán là 1, 7, 13, 19, tổng là 40
📝Test case 🧪

Testcase 1:

Input Output
3 9

Testcase 2:

Input Output
4 40

Testcase 3:

Input Output
5 125

Testcase 4:

Input Output
10 113410

Testcase 5:

Input Output
20 230586112

Testcase 6:

Input Output
57 569797435

Testcase 7:

Input Output
123 167067530

Testcase 8:

Input Output
983 670379627

Testcase 9:

Input Output
7382 72146642

Testcase 10:

Input Output
27162 573418403

Testcase 11:

Input Output
42845 287455086

Testcase 12:

Input Output
64723 950484816

Testcase 13:

Input Output
7382 72146642

Testcase 14:

Input Output
100000 203929061

Testcase 15:

Input Output
2 3

🟢 Bài giải mẫu 📚

Chưa có bài giải.
Nếu cần thiết có thể liên hệ facebook Phan Đức Hải