TS10 Tuyên Quang 2026 - Chia kẹo

Xem dạng PDF

Gửi bài giải

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

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Nhân dịp nghỉ hè, Nam được bố mẹ cho tham gia thiện nguyện cùng các thầy cô giáo và các bạn tại một số thôn khó khăn của xã XYZ. Nam đã chuẩn bị ~n~ gói kẹo được đánh số từ ~1~ đến ~n~, gói thứ ~i~ có ~a_i~ viên kẹo.

Điểm dừng chân đầu tiên của đoàn là thôn X, trong thôn có tất cả ~k~ em nhỏ. Nam muốn chọn ra hai gói kẹo sao cho tổng số viên kẹo của hai gói chia hết cho ~k~ để chia đều cho các em nhỏ.

Yêu cầu: Hãy lập trình giúp Nam đếm số lượng cách chọn ra hai gói kẹo thỏa mãn yêu cầu trên.

Input

  • Dòng đầu tiên chứa hai số nguyên dương ~n, k~ ~(1 < n \le 10^7; k \le 10^6)~;

  • Dòng thứ hai chứa ~n~ số nguyên dương ~a_1, a_2, \dots, a_n~ ~(a_i \le 10^9; 1 \le i \le n)~.

Output

Ghi ra một số nguyên là số lượng cách chọn hai gói kẹo thỏa mãn yêu cầu của Nam.

Scoring

Subtask Điểm Ràng buộc
1 ~60\%~ ~n \le 10^3~
2 ~30\%~ ~a_i \le 10^6~ ~(1 \le i \le n)~
3 ~10\%~ Không có thêm ràng buộc gì

Sample Input 1

6 3
10 13 15 8 20 10

Sample Output 1

6

Notes

Có các cách chọn sau:

  • Cách 1: Chọn gói kẹo ~1~ và gói kẹo ~4~

  • Cách 2: Chọn gói kẹo ~1~ và gói kẹo ~5~

  • Cách 3: Chọn gói kẹo ~2~ và gói kẹo ~4~

  • Cách 4: Chọn gói kẹo ~2~ và gói kẹo ~5~

  • Cách 5: Chọn gói kẹo ~4~ và gói kẹo ~6~

  • Cách 6: Chọn gói kẹo ~5~ và gói kẹo ~6~


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.