Đếm dãy con liên tiếp

View as PDF

Submit solution

Points: 0.50 (partial)
Time limit: 1.0s
Memory limit: 256M
Input: stdin
Output: stdout

Problem source:
HSG tỉnh Quảng Ninh 2019 - Bảng A
Problem type
Allowed languages
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Cho dãy số ~A~ có ~n~ số nguyên ~a_{1}, a_{2}, \ldots, a_{n}~. Một dãy con liên tiếp các số hạng của dãy ~A~ là dãy các số hạng từ số hạng ~a_{i}~ đến số hạng ~a_{j}(1 \leq i \leq j \leq n)~. Hãy cho biết dãy ~A~ có bao nhiêu dãy con liên tiếp mà giá trị tuyệt đối của tổng các số hạng trong dãy con đó lớn hơn một số nguyên dương ~S~ cho trước.

Dữ liệu:

  • Dòng thứ nhất chứa hai số nguyên dương ~n~ và ~S\left(n \leq 10^{5}, S \leq 10^{14}\right)~.
  • Dòng thứ hai chứa ~n~ số nguyên ~a_{1}, a_{2}, \ldots, a_{n}\left(\left|a_{i}\right| \leq 10^{9}\right)~.

Hai số liên tiếp trên cùng dòng được ghi cách nhau bởi dấu cách.

Kết quả:

  • Ghi ra trên một dòng, một số nguyên duy nhất là số dãy con liên tiếp thỏa mãn yêu cầu của bài toán.

Ví dụ:

Sample Input 1
4 4 
5 -1 8 -5
Sample Output 1
6
Sample Input 2
10 7 
-4 9 2 -11 -3 8 -6 5 -3 1
Sample Output 2
12

Giải thích:

Trong ví dụ đầu tiên có 6 dãy con thỏa mãn yêu cầu là: ~\{5\},\{8\},\{-5\},\{-1 ; 8\}~, ~\{5 ;-1 ; 8\}~ và ~\{5 ;-1 ; 8 ; 5\}~.

Ràng buộc:

  • Có ~50 \%~ số test ứng với ~50 \%~ số điểm của bài có ~n \leq 100~.
  • Có ~30\%~ test khác ứng với ~30 \%~ số điểm của bài có ~n \leq 10^{3}~.
  • Có ~20 \%~ test còn lại ứng với ~20 \%~ số điểm của bài có ~n \leq 10^{5}~.

Comments

Please read the guidelines before commenting.


There are no comments at the moment.