#include <bits/stdc++.h>
using namespace std;
bool isPrime(int n) {
  if (n <= 1) return false;
  if (n <= 3) return true;
  if (n % 2 == 0 || n % 3 == 0) return false;
  for (int i = 5; i * i <= n; i = i + 6)
    if (n % i == 0 || n % (i + 2) == 0) return false;
  return true;
}
int nCr(int n, int r) {
  int res = 1;
  if (n < r) return -1;
  r = min(r, n - r);
  for (int i = 0; i < r; i++) {
    res *= (n - i);
    res /= (i + 1);
  }
  return res;
}
void solve() {
  long long n, i;
  cin >> n;
  long long a[n];
  for (i = 0; i < n; i++) {
    cin >> a[i];
  }
  long long pref[n + 1];
  pref[0] = 0;
  long long sum = 0;
  long long cnt = 0;
  set<long long> s;
  s.insert(0);
  for (i = 0; i < n; i++) {
    sum += a[i];
    if (s.count(sum)) {
      cnt++;
      sum = 0;
      sum += a[i];
      s.clear();
      s.insert(0);
    }
    s.insert(sum);
  }
  cout << cnt << endl;
}
int main() {
  int t;
  t = 1;
  while (t--) {
    solve();
  }
  return 0;
}
