Two pointer 2C

Xem PDF

Điểm: 800 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Cho một mảng \(a\) gồm \(n\) số nguyên \(a_i\). Ta định nghĩa một đoạn con \(a[l \ldots r]\) \((1 \le l \le r \le n)\) của mảng là "tốt" nếu tổng các phần tử của nó nhiều nhất là \(s\). Nhiệm vụ của bạn là hãy đếm số đoạn con "tốt".

Input

  • Dòng đầu tiên chứa các số \(n\)\(s\) \((1 \le n \le 10^5, 1 \le s \le 10^{18})\).
  • Dòng thứ hai chứa các số nguyên \(a_i\) \((1 \le a_i \le 10^9)\).

Output

  • In ra một số nguyên là số lượng đoạn con "tốt".

Example

Sample input

7 20
2 6 4 3 6 8 9

Sample output

19

Nguồn: Codeforces


Bình luận (3)

Sắp xếp theo
Tải bình luận...