Ghép đôi mua chung

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài

Nhân Ngày hội sách, quầy giáo trình của Trường Công nghệ Thông tin và Truyền thông bán một combo tài liệu ôn thi với giá đúng ~S~ nghìn đồng. Combo chỉ bán cho nhóm hai sinh viên mua chung, và để tránh phải trả lại tiền lẻ, quầy yêu cầu hai bạn góp toàn bộ số tiền mình mang theo, tổng lại phải vừa đúng ~S~ nghìn đồng.

Có ~n~ sinh viên đến quầy, đánh số từ ~1~ đến ~n~; sinh viên thứ ~i~ mang theo ~a_i~ nghìn đồng. Hai sinh viên ~i~ và ~j~ (~i \ne j~) ghép đôi được với nhau nếu ~a_i + a_j = S~.

Yêu cầu

Hãy đếm số cặp sinh viên ghép đôi được, tức là số cặp chỉ số ~(i, j)~ với ~1 \le i < j \le n~ sao cho

$$a_i + a_j = S .$$

Hai cặp được coi là khác nhau nếu chúng khác nhau ở ít nhất một sinh viên; một sinh viên có thể có mặt trong nhiều cặp.

Dữ liệu vào

  • Dòng thứ nhất chứa hai số nguyên ~n~ và ~S~;
  • Dòng thứ hai chứa ~n~ số nguyên ~a_1, a_2, \ldots, a_n~, các số cách nhau bởi dấu cách.

Kết quả ra

Ghi ra một số nguyên duy nhất là số cặp sinh viên ghép đôi được.

Ràng buộc

~2 \le n \le 2 \cdot 10^5~; ~2 \le S \le 2 \cdot 10^9~; ~1 \le a_i \le 10^9~.

  • Subtask 1 (30% số điểm – test 01–06): ~n \le 2000~;
  • Subtask 2 (30% số điểm – test 07–12): ~a_i \le 10^5~;
  • Subtask 3 (40% số điểm – test 13–20): không có ràng buộc bổ sung.

Lưu ý: kết quả có thể vượt quá phạm vi kiểu số nguyên 32 bit.

Ví dụ

Dữ liệu vào mẫu 1
6 10
3 7 5 5 5 7
Kết quả ra mẫu 1
5

Giải thích

Có ~5~ cặp ghép đôi được: ~(1, 2)~ và ~(1, 6)~ với ~3 + 7 = 10~; ~(3, 4)~, ~(3, 5)~ và ~(4, 5)~ với ~5 + 5 = 10~. Chú ý hai sinh viên ~2~ và ~6~ cùng mang ~7~ nghìn đồng nhưng là hai người khác nhau nên tạo ra hai cặp khác nhau với sinh viên ~1~.


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.