#include <iostream>
using namespace std;
typedef long long ll;
int main() {
int n;
cin >> n;
int tmp;
ll* sum = new ll[n + 1];
sum[0] = 0;
for (int i = 1; i <= n; i++) {
cin >> tmp;
sum[i] = tmp + sum[i - 1];
}
int left = 1, right;
if (sum[n - 1] - sum[1] <= sum[1] || sum[n] - sum[n - 1] >= sum[n - 1] - sum[1]) {
cout << 0 << endl;
} else {
int l = 3, r = n;
while (r > l) {
int mid = (r - l) / 2 + l;
if (sum[mid - 1] - sum[left] > sum[n] - sum[mid - 1] && sum[mid - 1] - sum[left] > sum[left]) r = mid;
else l = mid + 1;
}
right = r;
ll ans = 0;
while (right <= n) {
while (right <= n && !(sum[right - 1] - sum[left] > sum[n] - sum[right - 1] && sum[right - 1] - sum[left] > sum[left])) {
right++;
}
ans += max(n - right + 1, 0);
left++;
}
cout << ans << endl;
}
}