import bisect
n = int(input())
nums = list(map(int, input().split()))
# 构建前缀和
sum_nums = [0]
for num in nums:
sum_nums.append(sum_nums[-1] + num)
total = sum_nums[-1]
cnt = 0
for i in range(1, n): # 枚举第一段 [0, i)
b1 = sum_nums[i]
# 二分查找第一个 j > i,使得 b2 > b1 且 b2 > b3
left = i + 1
right = n
idx_j = -1
while left <= right:
mid = (left + right) // 2
b2 = sum_nums[mid] - sum_nums[i]
b3 = total - sum_nums[mid]
if b2 > b1 and b2 > b3:
idx_j = mid
right = mid - 1
else:
left = mid + 1
if idx_j != -1:
cnt += n - idx_j
print(cnt)