atcoder#ABC233D. [ABC233D] Count Interval

[ABC233D] Count Interval

配点 : 400400

問題文

長さ NN の数列 A=(A1,A2,,AN)A=(A_1,A_2,\ldots,A_N) と、整数 KK が与えられます。

AA の連続部分列のうち、要素の和が KK になるものはいくつありますか? すなわち、以下の条件を全て満たす整数の組 (l,r)(l,r) はいくつありますか?

  • 1lrN1\leq l\leq r\leq N
  • i=lrAi=K\displaystyle\sum_{i=l}^{r}A_i = K

制約

  • 1N2×1051\leq N \leq 2\times 10^5
  • Ai109|A_i| \leq 10^9
  • K1015|K| \leq 10^{15}
  • 入力に含まれる値は全て整数である

入力

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

NN KK

A1A_1 A2A_2 \ldots ANA_N

出力

答えを出力せよ。

6 5
8 -3 5 7 0 -4
3

(l,r)=(1,2),(3,3),(2,6)(l,r)=(1,2),(3,3),(2,6)33 組が条件を満たします。

2 -1000000000000000
1000000000 -1000000000
0

条件を満たす (l,r)(l,r) の組が 11 つも存在しないこともあります。