#include <bits/stdc++.h>
using namespace std;
template <class T>
inline bool chmax(T& a, T b) {
  if (a < b) {
    a = b;
    return 1;
  }
  return 0;
}
template <class T>
inline bool chmin(T& a, T b) {
  if (a > b) {
    a = b;
    return 1;
  }
  return 0;
}
const long long INF = 1LL << 60;
int main(void) {
  int a, n, i, ans = 0;
  cin >> n;
  long long int cumsum[n + 1];
  cumsum[0] = 0;
  vector<int> v[2];
  vector<int>::iterator it;
  for (i = 1; i <= n; i++) {
    cin >> a;
    cumsum[i] = a + cumsum[i - 1];
  }
  bool ch;
  for (i = 0; i <= n; i++) {
    ch = false;
    for (it = v[0].begin(); it != v[0].end(); it++) {
      if (*it == cumsum[i]) {
        ch = true;
        v[1][it - v[0].begin()]++;
        break;
      }
    }
    if (!ch) {
      v[0].push_back(cumsum[i]);
      v[1].push_back(1);
    }
  }
  for (i = 0; i < v[0].size(); i++) {
    ans += v[1][i] * (v[1][i] - 1) / 2;
  }
  cout << ans << endl;
  return 0;
}
