#include <bits/stdc++.h>
using namespace std;
#define ll long long int
#define sep ios::sync_with_stdio(0),cin.tie(0)
const ll MXi = 1e5 + 5;
int main() {
sep;
ll n, su = 0, tmp = 0, x; cin >> n;
ll res = n*(n+1)/2;
unordered_map<ll, ll> seen;
seen[0] = 1;
for (ll i = 0; i < n; ++i) {
cin >> x;
su+= x;
++seen[su];
}
for (auto X: seen)
res-= (X.second*(X.second-1)/2);
cout << res << "\n";
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgbGwgbG9uZyBsb25nIGludAojZGVmaW5lIHNlcCBpb3M6OnN5bmNfd2l0aF9zdGRpbygwKSxjaW4udGllKDApCmNvbnN0IGxsIE1YaSA9IDFlNSArIDU7CmludCBtYWluKCkgewogICAgc2VwOwogICAgbGwgbiwgc3UgPSAwLCB0bXAgPSAwLCB4OyBjaW4gPj4gbjsKICAgIGxsIHJlcyA9IG4qKG4rMSkvMjsKICAgIHVub3JkZXJlZF9tYXA8bGwsIGxsPiBzZWVuOwogICAgc2VlblswXSA9IDE7CiAgICBmb3IgKGxsIGkgPSAwOyBpIDwgbjsgKytpKSB7CiAgICAgICAgY2luID4+IHg7CiAgICAgICAgc3UrPSB4OwogICAgICAgICsrc2VlbltzdV07CiAgICB9CiAgICBmb3IgKGF1dG8gWDogc2VlbikKICAgICAgICByZXMtPSAoWC5zZWNvbmQqKFguc2Vjb25kLTEpLzIpOwogICAgY291dCA8PCByZXMgPDwgIlxuIjsKICAgIHJldHVybiAwOwp9