#include <iostream>
#include<bits/stdc++.h>
#define fo(i,start,end) for(int i=start;i<end;i++)
using namespace std;
int main() {
int arr[] = { 1,0,1,2,10,8};
int n = 6;
int k = 3;
int count = 0;
unordered_map<int,int>mp;
int prefix[n] = {0};
int sum = 0;
mp[0] = 1; //i have seen sum of zero 1 time
fo(i,0,n){
sum += arr[i];
mp[sum]++;
int complement = sum-k;
count += mp[complement];
// prefix[i] = sum;
}
cout<<count;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZTxiaXRzL3N0ZGMrKy5oPgojZGVmaW5lIGZvKGksc3RhcnQsZW5kKSBmb3IoaW50IGk9c3RhcnQ7aTxlbmQ7aSsrKQp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CgkKCWludCBhcnJbXSA9IHsgMSwwLDEsMiwxMCw4fTsKCWludCBuID0gNjsKCWludCBrID0gMzsKCWludCBjb3VudCA9IDA7Cgl1bm9yZGVyZWRfbWFwPGludCxpbnQ+bXA7CglpbnQgcHJlZml4W25dID0gezB9OwoJaW50IHN1bSA9IDA7CgltcFswXSA9IDE7IC8vaSBoYXZlIHNlZW4gc3VtIG9mIHplcm8gMSB0aW1lCglmbyhpLDAsbil7CgkJc3VtICs9IGFycltpXTsKCQltcFtzdW1dKys7CgkJaW50IGNvbXBsZW1lbnQgPSBzdW0tazsKCQljb3VudCArPSBtcFtjb21wbGVtZW50XTsKCQkvLyBwcmVmaXhbaV0gPSBzdW07CgkJCgl9CgkKCWNvdXQ8PGNvdW50OwoJcmV0dXJuIDA7Cn0=