DMOPC '17 Contest 1 P2 - Sharing Crayons

View as PDF

Submit solution


Points: 7 (partial)
Time limit: 1.0s
Memory limit: 64M

Authors:
Problem type

Mimi is helping out at a daycare! There are M children and N boxes of crayons in a row, the ith of which has ci crayons. Mimi will choose a single contiguous section of crayon boxes to give to the children. In order to be fair, she also wants the total number of crayons in the subarray she chooses to be divisible by M so that it can be split equally. How many ways can she do this?

Constraints

For all subtasks:

1ci109

Subtask 1 [20%]

1N100
1M109

Subtask 2 [20%]

1N2000
1M106

Subtask 3 [40%]

1N105
1M106

Subtask 4 [20%]

1N105
1M109

Input Specification

The first line will have two space separated integers, N and M.
The second line will have N space separated integers, c1,c2,,cN.

Output Specification

A single integer, the number of subarrays which have a total which is a multiple of M. This number may overflow 32-bit integers.

Sample Input

Copy
5 6
3 5 9 6 10

Sample Output

Copy
2

Explanation for Sample

The two subarrays with a sum divisible by 6 are [6] and [5,9,6,10].


Comments

There are no comments at the moment.