#include<bits/stdc++.h>

#pragma GCC optimize("O2")
#pragma GCC optimize("O3")
#pragma GCC optimize("Ofast")

#define int long long

#define pii pair<int,int>
#define ii int,int
#define fi first
#define se second
#define pb push_back
#define lb lower_bound
#define ub upper_bound
#define umap unordered_map
#define BIT(mask, i) ((mask >> i)&1)
#define ALL(c) c.begin(), c.end()

using namespace std;

mt19937 rd(chrono::high_resolution_clock::now().time_since_epoch().count());
int rand(int l, int r){
    return  l + rd()*rd()%(r-l+1);
}

const int N = 2e5+7; // 2*10^5 + 7
const int M = 1e3+3;
const int MOD = 1e9+7;
const int inf = 3e18;

int n, k, a[N], s[N];

void cach1(){ // cách đơn giản nhất
    int dem = 0; // đếm số đoạn con có tổng bằng k
    for(int l = 1; l <= n; l++){
        for(int r = l; r <= n; r++){
            long long tong = 0; // lưu tổng của đoạn con từ l->r, 1 <= l <= r <= n
            for(int i = l; i <= r; i++){
                tong += a[i];
            }
            if(tong == k){ // thỏa mãn tổng = k
                dem = dem + 1;
            }
        }
    }
    cout << dem << '\n';
}
void cach2(){
    int dem = 0; // đếm số đoạn con có tổng bằng k
    for(int i = 1; i <= n; i++){
        s[i] = s[i-1] + a[i];
    }
    for(int l = 1; l <= n; l++){
        for(int r = l; r <= n; r++){
            long long tong = s[r] - s[l-1];
            if(tong == k){ // thỏa mãn tổng = k
                dem = dem + 1;
            }
        }
    }
    cout << dem << '\n';
}

void cach3(){
    for(int i = 1; i <= n; i++){
        s[i] = s[i-1] + a[i];
    }
    // prefix sum
    map<long long, long long> mp;
    int dem = 0;
    mp[0] = 1;
    for(int i = 1; i <= n; i++){
        dem += mp[s[i] - k]; // đếm số đoạn s[r] - k thỏa mãn s[r] - k == s[l-1]
        mp[s[i]]++; // cộng dồn lên vì sau khi tính được s
    }
    cout << dem;
}

signed main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    cin >> n >> k;
    for(int i = 1; i <= n; i++){
        cin >> a[i];
    }
    cach3();
}

