#B0134. 最长 K 和区间

最长 K 和区间

题目描述

Aki 有一个长度为 nn 的整数序列 a1,a2,,ana_1,a_2,\dots,a_n

现在他想从中选出一个连续区间 [l,r][l,r],满足该区间内所有数的和恰好等于 kk,即:

al+al+1++ar=ka_l+a_{l+1}+\cdots+a_r = k

请你求出所有满足条件的连续区间中,区间长度的最大值

若不存在任何区间和等于 kk,输出 0

输入格式

第一行输入两个整数 n,kn,k,表示序列长度和目标区间和。

第二行输入 nn 个整数 a1,a2,,ana_1,a_2,\dots,a_n,表示序列中的各个数。

其中数据范围为:

  • 1n1051 \le n \le 10^5
  • 109ai109-10^9 \le a_i \le 10^9
  • 1014k1014-10^{14} \le k \le 10^{14}

输出格式

输出一个整数,表示区间和恰好等于 kk 的最大区间长度。

若不存在这样的区间,输出 0

5 3
1 2 -1 2 -1
5
4 100
1 2 3 4
0