HSG THPT HẢI PHÒNG 2025- BÀI 5
Gửi bài giải
Điểm:
40
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
1G
Tác giả:
Kiểu bài tập
Ngôn ngữ cho phép
C++, Python
Bài 5: Tìm kiếm
Cho mảng A có n số nguyên dương (a1, a2, ..., an).
Yêu cầu:
Với mỗi số nguyên dương ai, tìm số nguyên dương aj với j > i và j nhỏ nhất thỏa mãn aj có nhiều ước hơn ai; nếu không có số aj nào thỏa mãn thì kết quả tìm kiếm là -1.
Dữ liệu vào
- Dòng đầu tiên là số nguyên dương n ( n <= 2 x 105 );
- Dòng thứ hai có n số nguyên dương a1, a2, ..., an ( ai <= 109 ).
- Dữ liệu đảm bảo: max(ai) - min(ai) <= 106 với i = 1..n.
- Các số trên cùng một dòng trong file dữ liệu được viết cách nhau bởi dấu cách trống.
Kết quả ra
Ghi ra file kết quả một dòng có n số nguyên theo thứ tự là kết quả tìm kiếm theo yêu cầu.
Các số nguyên ghi cách nhau bởi một dấu cách trống.
Ví dụ
Sample Input
6
6 18 7 10 9 8
Sample Output
18 -1 10 -1 8 -1
Giải thích
Số ước tương ứng của các số là: 4 6 2 4 3 4
Kết quả tìm kiếm:
- a1 = 18 (vì 6 > 4)
- a2 = -1 (vì không có số nào lớn hơn 6)
- a3 = 10 (vì 4 > 2 và a4 gần nhất)
- a4 = -1 (vì không có số nào có lớn hơn 4)
- a5 = 8 (vì 4 > 3)
- a6 = -1 (vì không có số nào bên phải)
Chấm điểm
- Subtask 1 (20% số điểm): n <= 103 và ai <= 104 với i = 1..n.
- Subtask 2 (50% số điểm): n <= 103 và ai <= 106 với i = 1..n.
- Subtask 3 (30% số điểm): Không có ràng buộc nào thêm.
Nhận xét