#include <bits/stdc++.h>
using namespace std;
int main() {
int n,k;
cin>>n>>k;
vector<int> numbers(n);
for(auto& number: numbers){
cin>>number;
}
int answer = 0;
unordered_map<int,int> hashSum;
int currSum = 0;
hashSum[currSum]++;
for(int i=0; i<n; i++){
currSum += numbers[i];
if(hashSum.find(currSum - k) != hashSum.end())answer+=hashSum[currSum - k];
hashSum[currSum]++;
}
cout<<answer<<" ";
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCWludCBuLGs7CgljaW4+Pm4+Pms7CgkKCXZlY3RvcjxpbnQ+IG51bWJlcnMobik7CgkKCWZvcihhdXRvJiBudW1iZXI6IG51bWJlcnMpewoJCWNpbj4+bnVtYmVyOwoJfQoJCglpbnQgYW5zd2VyID0gMDsKCQoJdW5vcmRlcmVkX21hcDxpbnQsaW50PiBoYXNoU3VtOwoJCglpbnQgY3VyclN1bSA9IDA7CgkKCWhhc2hTdW1bY3VyclN1bV0rKzsKCQoJZm9yKGludCBpPTA7IGk8bjsgaSsrKXsKCQkKCQljdXJyU3VtICs9IG51bWJlcnNbaV07CgkJCgkJCgkJaWYoaGFzaFN1bS5maW5kKGN1cnJTdW0gLSBrKSAhPSBoYXNoU3VtLmVuZCgpKWFuc3dlcis9aGFzaFN1bVtjdXJyU3VtIC0ga107CgkJCgkJaGFzaFN1bVtjdXJyU3VtXSsrOwoJfQoJCgljb3V0PDxhbnN3ZXI8PCIgIjsKCQoJcmV0dXJuIDA7Cn0=