[CPP PTIT 2024]. TEST 3 03-12-2024
[Lý Thuyết Số - Toán Học]. Bài 90. Số siêu nguyên tố
Nộp bàiPoint: 200
Một số được coi là số siêu nguyên tố nếu nó là số nguyên tố và khi bạn lần lượt bỏ các chữ số bên phải của nó đi thì nó vẫn là 1 số nguyên tố.
Ví dụ số 317 là một số siêu nguyên tố vì 317 là số nguyên tố, 31 (bỏ 7) là số nguyên tố, 3(bỏ tiếp số 1) là số nguyên tố. Hãy liệt kê những số siêu nguyên tố trong đoạn [a, b].
Đầu vào
Dòng duy nhất chứa 2 số a, b.
Giới hạn
0<=a<=b<=10^6
Đầu ra
In ra các số siêu nguyên tố trong đoạn [a, b], nếu giữa 2 số [a, b] không có số siêu nguyên tố thì in ra 28tech.
Ví dụ :
Input 01
0 1190
Output 01
2 3 5 7 23 29 31 37 53 59 71 73 79 233 239 293 311 313 317 373 379 593 599 719 733 739 797
[Comparator Lower_bound Upper_bound]. Bài 18. Đếm số cặp
Nộp bàiPoint: 200
Cho mảng A[] gồm N phần tử và số nguyên K, bạn hãy đếm xem trong mảng có bao nhiêu cặp phần tử A[i], A[j] với i khác j mà có độ chênh lệnh giữa chúng bằng K.
Gợi ý : Sort mảng A[], duyệt qua từng chỉ số i trong mảng, với mỗi chỉ số i tìm vị trí đầu tiên và vị trí cuối cùng của A[i] + K để đếm số cặp phần tử có thể kết hợp với A[i] để tạo thành cặp có chênh lệnh bằng K.
Chú ý : Trường hợp k = 0 bạn có thể đếm 1 cặp nhiều lần nếu tìm kiếm từ đầu dãy.
Đầu vào
• Dòng 1 gồm N và K
• Dòng 2 gồm N phần tử trong mảng A[]
Giới hạn
• 1<=N<=10^6
• 0<=K<=10^6
• 0<=A[i]<=10^9
Đầu ra
In ra số cặp thỏa mãn
Ví dụ :
Input 01
10 2
4 2 2 6 0 8 3 1 0 7
Output 01
9
Input 02
3 0
28 28 28
Output 02
3
[Mảng 2 Chiều]. Bài 27. Maximum path sum 3
Nộp bàiPoint: 200
Cho mảng 2 chiều A gồm N hàng và N cột, hãy tìm 1 đường đi từ cột 1 tới cột N sao cho các phần tử trên đường đi đó là lớn nhất có thể. Biết rằng ở mỗi bước đi từ ô hiện tại (i, j) chỉ có thể đi sang phải (i, j + 1) hoặc đi xuống ô dưới bên phải (i + 1, j + 1), ô bên trên bên phải (i - 1, j + 1). Hãy tìm 1 đường đi có tổng các số trên đường đi là lớn nhất.
Đầu vào
• Dòng 1 là N
• N dòng tiếp theo mỗi dòng gồm N số
Giới hạn
• 1<=N<=100
• -100<=A[i][j]<=100
Đầu ra
In ra đáp án của bài toán
Ví dụ :
Input 01
5
2 -8 2 9 0
-5 6 6 -1 6
3 5 0 2 9
9 -8 9 7 0
-4 6 1 -2 0
Output 01
40
[Xâu Ký Tự]. Bài 28. Số lớn nhất trong xâu
Nộp bàiPoint: 200
Cho một xâu kí tự S chỉ bao gồm các chữ cái và chữ số, hãy tìm số lớn nhất xuất hiện trong xâu.
Ví dụ : S = "abc123bba567ajsj50kkf099" thì số lớn nhất xuất hiện trong xâu là số 567, chú ý trong trường hợp một số có các số 0 đứng trước thì ta loại bỏ các số 0 ở đầu, trong ví dụ số 099 ta tính là số 99, 000 ta tính là số 0.
Chú ý : Số xuất hiện trong xâu có thể có 1000 chữ số
Đầu vào
Một dòng duy nhất chứa xâu S.
Giới hạn
1≤len(S)≤100000
Đầu ra
In ra số lớn nhất xuất hiện trong xâu, dữ liệu đảm bảo có ít nhất 1 số xuất hiện trong xâu.
Ví dụ :
Input 01
abc123bba567ajsj50kkf099x28tech
Output 01
567
[Class Relationship]. Bài 3. Giải cứu
Nộp bàiPoint: 200
Để cứu công chúa BraveQ, hoàng tử Lừa phải trải qua các cuộc giao đấu với ác quỷ, nhân vật hoàng tử có các thông tin :
• Power : Chỉ số sức mạnh
• Blood : Chỉ số máu
• Alive : Mô tả nhân vật còn sống hay đã chết
Các sự kiện mà nhân vật hoàng tử Lừa có thể gặp phải. Nếu nhân vật có máu <= 0 hoặc sức mạnh <= 0 thì nhân vật sẽ bị chết
Gặp nấm độc (mushroom) : Máu giảm đi 15, Sức mạnh giảm 2
Gặp phù thùy (witch) : Hai bên giao đấu và nếu sức mạnh của phù thủy lớn hơn hoặc bằng chỉ số sức mạnh của hoàng tử thì hoàng tử sẽ thua cuộc và bị chết, ngược lại nếu thắng chỉ số sức mạnh tăng thêm 5
Gặp cây đậu thần (pea) : Hoàng tử sẽ ăn cây đậu thần và chỉ số máu được cộng thêm 10, chỉ số sức mạnh tăng thêm 2
Gặp quân lính (soldier) : Hai bên giao đấu và nếu quân lính có sức mạnh lớn hơn hoặc bằng chỉ số sức mạnh của hoàng tử thì hoàng tử thua cuộc và bị chết ngay lập tức, ngược lại nếu đánh thắng quân lính thì chỉ số máu tăng thêm 5 và chỉ số sức mạnh tăng thêm 7.
Đầu vào
• Dòng 1 gồm thông tin của hoàng tử lừa bao gồm chỉ số sức mạnh, chỉ số máu, tình trạng ban đầu của nhân vật này là còn sống
• Dòng thứ 2 là N : Số lượng sự kiện mà hoàng tử Lừa gặp phải trên đường đi giải cứu công chúa
• N dòng tiếp theo mô tả sự kiện, nếu là sự kiện 2 và 4 thì có thêm thông tin chỉ số sức mạnh của phù thủy và quân lính
Giới hạn
• 1<=N<=1000
Đầu ra
• Đối với mỗi sự kiện bạn hãy in ra trạng thái của nhân vật hoàng tử, trong đó nếu nhân vật chết thì in DEAD, ngược lại còn sống thì in ALIVE.
Chú ý nếu trong 1 sự kiện nào đó hoàng tử bị chết thì các sự kiện tiếp theo đó coi như không được thực hiện.
Ví dụ :
Input 01
POWER : 100
BLOOD : 100
ALIVE
6
witch 77
mushroom
pea
pea
soldier 164
soldier 137
Output 01
POWER : 105
BLOOD : 100
ALIVE
--------------------
POWER : 103
BLOOD : 85
ALIVE
--------------------
POWER : 105
BLOOD : 95
ALIVE
--------------------
POWER : 107
BLOOD : 105
ALIVE
--------------------
POWER : 0
BLOOD : 0
DEAD
--------------------
POWER : 0
BLOOD : 0
DEAD
--------------------