#include <iostream>
#include<bits/stdc++.h>
using namespace std;
int main() {
int n,k; cin>>n>>k;
vector<int>arr(n);
for(int i =0 ; i<n;i++){
cin>>arr[i];
}
unordered_map<int,int>hash;
int sum =0 ;
int count=0 ;
int minlength = INT_MAX ;
for(int i =0 ; i<n;i++){
sum+=arr[i];
if(sum==k){
int length=i+1;
if(length<minlength){
minlength = length;
count= 1 ;
}
else if (length == minlength){
count++;
}
}
else{
int comp= sum-k;
if(hash.find(comp)!=hash.end()) {
int j = hash[comp];
int length=i-j;
if(length<minlength){
minlength = length;
count= 1 ;
}
else if (length == minlength){
count++;
}
}
}
hash[sum]=i;
}
cout<<count;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZTxiaXRzL3N0ZGMrKy5oPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CglpbnQgbixrOyBjaW4+Pm4+Pms7Cgl2ZWN0b3I8aW50PmFycihuKTsKCWZvcihpbnQgaSA9MCA7IGk8bjtpKyspewoJCWNpbj4+YXJyW2ldOwoJfQoJdW5vcmRlcmVkX21hcDxpbnQsaW50Pmhhc2g7CglpbnQgc3VtID0wIDsgCglpbnQgY291bnQ9MCA7IAoJaW50IG1pbmxlbmd0aCA9IElOVF9NQVggOyAKCglmb3IoaW50IGkgPTAgOyBpPG47aSsrKXsKCQkKCQlzdW0rPWFycltpXTsKCQlpZihzdW09PWspewoJCWludCBsZW5ndGg9aSsxOwoJCWlmKGxlbmd0aDxtaW5sZW5ndGgpewoJCQkJbWlubGVuZ3RoID0gbGVuZ3RoOyAKCQkJCWNvdW50PSAxIDsgCgkJCX0KCQkJZWxzZSBpZiAobGVuZ3RoID09IG1pbmxlbmd0aCl7CgkJCQljb3VudCsrOwoJCQl9CgkJCgkJfQoJCWVsc2V7CgkJCWludCBjb21wPSBzdW0tazsKCQkJaWYoaGFzaC5maW5kKGNvbXApIT1oYXNoLmVuZCgpKSB7CgkJCQlpbnQgaiA9IGhhc2hbY29tcF07CgkJCQlpbnQgbGVuZ3RoPWktajsKCQkJCWlmKGxlbmd0aDxtaW5sZW5ndGgpewoJCQkJbWlubGVuZ3RoID0gbGVuZ3RoOyAKCQkJCWNvdW50PSAxIDsgCgkJCX0KCQkJZWxzZSBpZiAobGVuZ3RoID09IG1pbmxlbmd0aCl7CgkJCQljb3VudCsrOwoJCQl9CgkJCX0KCQl9CgkJCgkJaGFzaFtzdW1dPWk7Cgl9Cgljb3V0PDxjb3VudDsKCXJldHVybiAwOwp9