Chia hết cho D

Xem dạng PDF

Gửi bài giải

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

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

Cho một mảng ~a~ gồm ~n~ phần tử và một số nguyên dương ~D~. Nhiệm vụ của bạn là đếm số đoạn con liên tiếp của ~a~ mà có tổng các phần tử trong đoạn chia hết cho ~D~.

Input

Dòng đầu tiên gồm hai số nguyên dương ~n~ và ~D~ tương ứng với số phần tử của mảng ~a~ và hằng số ~D\ (1\le n,D\le 10^5)~.

Dòng thứ hai gồm ~n~ số nguyên ~a_1,a_2,\dots,a_n~ tương ứng với các phần tử trong mảng ~a\ (|a_i|\le 10^9)~.

Output

Gồm duy nhất một giá trị là số đoạn con thỏa mãn.

Sample Input 1

5 4
1 3 -2 3 -5

Sample Output 1

4

Notes

Có bốn đoạn con thỏa mãn điều kiện của đề bài:

  • Đoạn con ~[1;2]~ do ~a_1+a_2=1+3=4~ chia hết cho ~4~.

  • Đoạn con ~[1;5]~ do ~a_1+a_2+a_3+a_4+a_5=1+3-2+3-5=0~ chia hết cho ~4~.

  • Đoạn con ~[2;4]~ do ~a_2+a_3+a_4=3-2+3=4~ chia hết cho ~4~.

  • Đoạn con ~[3;5]~ do ~a_3+a_4+a_5=-2+3-5=-4~ chia hết cho ~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.