AT_abc105_d [ABC105D] Candy Distribution
题目描述
有 $N$ 个箱子从左到右排成一列,第 $i$ 个箱子里有 $A_i$ 个糖果。
你想从若干连续的箱子中取出糖果,并将它们平均分给 $M$ 个孩子。
请你计算满足以下条件的所有组 $(l, r)$ 的总数:
- $l, r$ 都是整数,且满足 $1 \leq l \leq r \leq N$。
- $A_l + A_{l+1} + \cdots + A_r$ 是 $M$ 的倍数。
输入格式
输入通过标准输入按以下格式给出。
> $N$ $M$ $A_1$ $A_2$ $\cdots$ $A_N$
输出格式
输出满足条件的组 $(l, r)$ 的总数。
请注意,输出结果可能超出 $32$ 位整数范围。
说明/提示
### 限制条件
- 所有输入均为整数。
- $1 \leq N \leq 10^5$
- $2 \leq M \leq 10^9$
- $1 \leq A_i \leq 10^9$
### 样例解释 1
对于每组 $(l, r)$,其和 $A_l + A_{l+1} + \cdots + A_r$ 如下,其中有 $3$ 组是 $2$ 的倍数。
- $(1, 1)$ 的和:$4$
- $(1, 2)$ 的和:$5$
- $(1, 3)$ 的和:$10$
- $(2, 2)$ 的和:$1$
- $(2, 3)$ 的和:$6$
- $(3, 3)$ 的和:$5$
由 ChatGPT 4.1 翻译