#include <bits/stdc++.h>
using namespace std;
int ans(vector<int>&pre,int k){
int a=0;unordered_map<int,int>m;m[0]=1;
for(int i=0;i<pre.size();i++){
if(pre[i]==k)a++;
if(m.find(pre[i]-k)!=m.end())a+=m[pre[i]-k];
m[pre[i]]++;
}
return a;
}
int main() {
// your code goes here
int n;cin>>n;vector<int>pre(n);
for(int i=0;i<n;i++){
int e;cin>>e;
if(i==0){
pre[i]=e;
}else{
pre[i]=pre[i-1]+e;
}
}
int k;cin>>k;
cout<<ans(pre,k)<<endl;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgYW5zKHZlY3RvcjxpbnQ+JnByZSxpbnQgayl7CglpbnQgYT0wO3Vub3JkZXJlZF9tYXA8aW50LGludD5tO21bMF09MTsKCWZvcihpbnQgaT0wO2k8cHJlLnNpemUoKTtpKyspewoJCWlmKHByZVtpXT09aylhKys7CgkJaWYobS5maW5kKHByZVtpXS1rKSE9bS5lbmQoKSlhKz1tW3ByZVtpXS1rXTsKCQltW3ByZVtpXV0rKzsKCX0KCXJldHVybiBhOwp9CmludCBtYWluKCkgewoJLy8geW91ciBjb2RlIGdvZXMgaGVyZQoJaW50IG47Y2luPj5uO3ZlY3RvcjxpbnQ+cHJlKG4pOwoJZm9yKGludCBpPTA7aTxuO2krKyl7CgkJaW50IGU7Y2luPj5lOwoJCWlmKGk9PTApewoJCQlwcmVbaV09ZTsKCQl9ZWxzZXsKCQkJcHJlW2ldPXByZVtpLTFdK2U7CgkJfQoJfQoJaW50IGs7Y2luPj5rOwoJY291dDw8YW5zKHByZSxrKTw8ZW5kbDsKCXJldHVybiAwOwp9