[Hải Phòng 25-26] Đếm cặp chia hết


Submit solution

Points: 50
Time limit: 1.0s
Memory limit: 256M

Problem type

Cho dãy n số nguyên a1, a2, ..., an và số nguyên dương M. Hãy đếm số lượng cặp (i, j) với 1 <= i < j <= n sao cho tổng (ai + aj) chia hết cho M.

Dữ liệu:

Nhập từ bàn phím

- Dòng đầu chứa hai số nguyên dương n, M (n <= 3*10^5; M <= 10^18)

- Dòng thứ hai chứa n số nguyên lần lượt là a1, a2, ..., an (|ai| <= 10^18 với mọi i = 1, 2, ..., n). Hai số liên tiếp trên cùng một dòng cách nhau bằng khoảng trắng (space).

Kết quả:

Ghi ra màn hình một số nguyên duy nhất là số cặp tìm được.

Ràng buộc:

- Có 40% số tests ứng với 40% số điểm của bài có n <= 5000

- 20% số tests tiếp theo ứng với 20% số điểm của bài có M <= 10^6

- Các tests còn lại không có ràng buộc bổ sung

Ví dụ:

Dữ liệu:
5 4
1 3 2 6 2

Kết quả:
4

Giải thích: Các cặp (i, j) tìm được là (1,2), (3,4), (3,5), (4,5) tương ứng với các tổng: 1+3=4; 2+6=8; 2+2=4; 6+2=8 đều chia hết cho 4.


Comments

There are no comments at the moment.