4Sum
Xem dưới dạng PDF
Gửi bài giải
Điểm:
15
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
64M
đầu vào:
stdin
Đầu ra:
stdout
Tác giả:
Kiểu bài tập
Cho dãy \(N\) số nguyên dương đã sắp xếp tăng dần và số S. Tìm hai vị trí \(i < j\) sao cho \(a_i + a_j = S\).
Định dạng đầu vào
- Dòng 1: \(N, S\) (\(1 \le N \le 10^5, 1 \le S \le 2 \cdot 10^9\)).
- Dòng 2: \(N\) số nguyên dương \(a_1, a_2, \dots, a_N\) (\(1 \le a_i \le 10^9\)).
Định dạng đầu ra
- In ra hai chỉ số \(i\) và j (1-indexed). Nếu có nhiều cặp, in ra cặp có \(i\) nhỏ nhất. Nếu không có, in ra
-1.
Ví dụ
Input:
5 9
1 2 4 7 11
Output:
2 4
Giải thích: \(a_2 + a_4 = 2 + 7 = 9\).
Ràng buộc & Subtasks
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | 30 | \(N \le 1000\) |
| 2 | 70 | \(N \le 10^5\) |
Nhận xét