Gửi bài giải
Điểm:
10,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
1G
Input:
stdin
Output:
stdout
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch, TEXT
Trong một khóa học lập trình trực tuyến có ~n~ học viên tham gia. Sau thời gian luyện tập giải các bài tập, các học viên được đánh giá bằng chỉ số năng lực trên bảng xếp hạng, học viên thứ ~i~ có chỉ số năng lực là ~a_i~ (~i = 1..n~). Biết rằng, không có hai học viên nào có cùng chỉ số năng lực. Ban tổ chức khóa học dự định tổ chức cho các học viên chia thành các đội để lập trình thi đấu cùng nhau, mỗi đội gồm hai học viên sao cho tổng chỉ số năng lực của hai học viên trong một đội đúng bằng ~k~.
Yêu cầu: Hãy cho biết ban tổ chức khóa học có thể chia được nhiều nhất thành bao nhiêu đội để tham gia thi đấu?
INPUT
- Dòng thứ nhất chứa hai số nguyên dương ~n~, ~k~ (~1 \leq n \leq 10^5~, ~1 \leq k \leq 10^9~).
- Dòng thứ hai chứa ~n~ số nguyên dương ~a_1, a_2, ..., a_n~ (~1 \leq a_i \leq 10^9~, ~a_i \neq a_j~ với ~i \neq j~).
OUTPUT
Gồm một dòng chứa một số nguyên duy nhất là kết quả bài toán.
SAMPLE INPUT
9 17
5 16 7 12 10 2 17 15 1
SAMPLE OUTPUT
4
SUBTASKS
- ~40\%~ số test tương ứng ~40\%~ số điểm có ~1 \leq n \leq 10^3~.
- ~60\%~ số test tương ứng ~60\%~ số điểm có ~10^3 < n \leq 10^5~.
Bình luận