A. 数列长度

    Type: RemoteJudge 2000ms 256MiB

数列长度

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题面翻译

输入一个数列aa

任选i,ji,j满足iijj

问有多少种情况a[i]+a[i+1]...+a[j]=0a[i]+a[i+1]...+a[j]=0

注意:数列长度≤21052*10^5

每个数字在[109,109][-10^9,10^9]

题目描述

長さ N N の整数列 A A があります。

A A 空でない 連続する 部分列であって、その総和が 0 0 になるものの個数を求めてください。 ただし、ここで数えるのは 部分列の取り出し方 であることに注意してください。 つまり、ある 2 2 つの部分列が列として同じでも、取り出した位置が異なるならば、それらは別々に数えるものとします。

输入格式

入力は以下の形式で標準入力から与えられる。

N N A1 A_1 A2 A_2 ... ... AN A_N

输出格式

A A の空でない連続する部分列であって、その総和が 0 0 になるものの個数を出力せよ。

样例 #1

样例输入 #1

6
1 3 -4 2 2 -2

样例输出 #1

3

样例 #2

样例输入 #2

7
1 -1 1 -1 1 -1 1

样例输出 #2

12

样例 #3

样例输入 #3

5
1 -2 3 -4 5

样例输出 #3

0

提示

制約

  • 1  N  2 × 105 1\ \leq\ N\ \leq\ 2\ \times\ 10^5
  • 109  Ai  109 -10^9\ \leq\ A_i\ \leq\ 10^9
  • 入力はすべて整数である。

Sample Explanation 1

空でない連続した部分列であって、その総和が 0 0 になるのは、(1,3,4) (1,3,-4) , (4,2,2) (-4,2,2) , (2,2) (2,-2) 3 3 つです。

Sample Explanation 2

この例では、列として同じだが取り出す位置の異なる部分列が複数回数えられています。 例えば、(1,1) (1,-1) 3 3 回数えられています。

Sample Explanation 3

空でない連続した部分列であって、その総和が 0 0 になるものはありません。