Điều hướng chính

Nhắn tin NQ Coding

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài tập tongdoanbangk

Tổng của một đoạn bằng K

Dễ Mảng cộng dồn (Prefix Sum)Heap, Set, Map, ...

  • 100p Điểm
  • 1.0s Thời gian
  • 256M Bộ nhớ
  • 30% Tỉ lệ AC
  • 3 Số AC

Cho dãy số nguyên \(a\) gồm \(n\) phần tử, các số được đánh số từ \(1\) đến \(n\).

Tổng các phần tử liên tiếp của đoạn \(a[l..r]\) trong dãy (kí hiệu \(Sum(l, r)\), trong đó \(1 \le l \le r \le n\)) được tính như sau: \(Sum(l, r) = a_l + a_{l+1} + \cdots + a_r\).

Yêu cầu: Đếm số lượng đoạn \(a[l..r]\) thỏa mãn \(Sum(l, r) = K\).

Input

  • Dòng đầu ghi hai số nguyên \(n, K\) (\(1 \le n \le 2 \cdot 10^5\), \(|K| \le 10^9\)).
  • Dòng thứ hai ghi \(n\) số nguyên \(a_1, a_2, \ldots, a_n\) (\(|a_i| \le 10^9\)).

Các số cách nhau một dấu cách.

Output

Gồm một số duy nhất là số lượng đoạn đếm được.

Scoring

  • Có \(50\%\) số điểm với \(1 \le n \le 2000\).
  • Có \(50\%\) số điểm với \(2000 < n \le 2 \cdot 10^5\).

Sample Input 1

6 0
4 5 -9 4 -3 1

Sample Output 1

2

Notes

Các đoạn thỏa mãn: \([4, 5, -9]\) và \([5, -9, 4]\).

Bình luận

Chưa có bình luận nào.