Đoạn con

Xem PDF



Dạng bài
Điểm: 7 (p) Thời gian: 1.0s Bộ nhớ: 1G Input: SUB.INP Output: SUB.OUT

Cho một dãy số gồm \(n\) số nguyên dương \(a_1,a_2,...,a_n\) và hai số nguyên dương \(p,q\). Mỗi dãy \(a_i,a_{i+1},a_{i+2},...,a_j\) với \(1 \leq i \leq j \leq n\) với \(1 \leq i \leq j \leq n\) được gọi là dãy con liên tiếp của dãy đã cho.

Yêu cầu

Hãy lập tình đếm số các dãy con liên tiếp của dãy số đã cho có tổng các số lớn hơn hoặc bằng \(p\) và nhỏ hơn hoặc bằng \(q\).

Dữ liệu vào

Được cho bởi tệp SUB.INP có cấu trúc như sau:

  • Đong đầu ghi ba số nguyên \(n,p,q(1 \leq n \leq 10^5,1 \leq p < q \leq 10^{15})\)
  • Dòng thứ hai ghi \(n\) số nguyên \(a_1,a_2,...,a_n(1 \leq a_i \leq 10^7, i = 1,2,...,n)\)

Dữ liệu ra

Được cho bởi tệp SUB.OUT có cấu trúc như sau:
- Ghi một số nguyên là số các dãy con liên tiếp thỏa mãn có tổng các số lớn hơn hoặc bằng \(p\) và nhỏ hơn hoặc bằng \(q\).

Sample
Input
10 20 30
3 2 4 2 1 2 9 12 3 7
Output
12

Ràng buộc

  • \(50\%\) số test: \(1 \leq n \leq 10^4; 1 \leq p < q \leq 10^9\)
  • \(50\%\) số test: \(10^4 < n \leq 10^5; 10^9 < p < q \leq 10^{15}\)

Bình luận

Không có bình luận nào.