[HSG_NB_24] Cặp số

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
Ngôn ngữ cho phép
C, C++, Java, Pascal, Python

Cho dãy số gồm ~n~ số nguyên ~a_1, a_2, a_3, ..., a_n~ và một số nguyên dương ~k~. Số nguyên ~a_i, a_j~ là số nguyên lần lượt ở các vị trí thứ ~i~ và thứ ~j~.

Yêu cầu

Hãy cho biết có bao nhiêu cách chọn các cặp số ~i~ và ~j~ thỏa mãn: ~i < j~ và ~a_i + a_j~ chia hết cho ~k~.

Dữ liệu đầu vào

Gồm hai dòng:

  • Dòng đầu tiên gồm hai số nguyên dương ~n, k~ ~(1 < n, k \le 10^6)~, mỗi số cách nhau một khoảng trắng.
  • Dòng thứ hai chứa dãy số nguyên ~a_1, a_2, a_3, ..., a_n~ ~(|a_i| \le 10^9;\ 1 \le i \le n)~, mỗi số cách nhau một khoảng trắng.

Dữ liệu đầu ra

Gồm một số nguyên duy nhất là số cách chọn thỏa mãn yêu cầu bài toán.

Ràng buộc dữ liệu

  • 60% số test ứng với 60% số điểm có ~n \le 10^3~.
  • 40% số test ứng với 40% số điểm không giới hạn gì thêm.

Ví dụ

Ví dụ 1
INPUT
4 6
2 4 8 -8
OUTPUT
4

Giải thích: Có ~4~ cặp ~(i, j)~ thỏa mãn là: ~(1, 2), (1, 4), (2, 3), (3, 4)~.


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.