#PS0000011. Đoạn con chia hết (Subarray Divisibility)

Đoạn con chia hết (Subarray Divisibility)

Đoạn con chia hết (Subarray Divisibility)

Nguồn: CSES

Phiên bản: Phước Hưng OJ Extended

Đề bài

Cho mảng nn số nguyên

a1,a2,…,an.a_1,a_2,\ldots,a_n.

Hãy đếm số đoạn con liên tiếp không rỗng có tổng chia hết cho nn.

Nói cách khác, cần đếm số cặp (l,r)(l,r) sao cho

1≤l≤r≤n1\le l\le r\le n

và

al+al+1+⋯+ar≡0(modn).a_l+a_{l+1}+\cdots+a_r\equiv0\pmod n.

Input

  • Dòng đầu chứa số nguyên nn.
  • Dòng thứ hai chứa nn số nguyên a1,a2,…,ana_1,a_2,\ldots,a_n.

Output

In số đoạn con có tổng chia hết cho nn.

Subtask

Điều kiện chung đã đối chiếu với nguồn:

  • 1≤n≤2⋅1051\le n\le2\cdot10^5

  • −109≤ai≤109-10^9\le a_i\le10^9

  • Subtask 1 — 20%: n≤40n\le40

  • Subtask 2 — 30%: n≤3000n\le3000.

  • Subtask 3 — 50%: không có điều kiện bổ sung ngoài các điều kiện chung ở trên.

Ví dụ

Input

5
3 1 2 7 4

Output

1

Giải thích

Với dãy

[3,1,2,7,4][3,1,2,7,4]

và n=5n=5, đoạn [2,4][2,4] có tổng

1+2+7=10,1+2+7=10,

chia hết cho 55. Không có đoạn nào khác thỏa điều kiện, nên đáp án là 11.