#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 1e6+10;
int a[N],b[N],c[N],d[N];
//a接收数据 b前缀和 cd符合条件计数器
int main()
{
long long cnt=0;
int n;
cin >> n;
for (int i = 1; i <= n; i ++ )
cin>>a[i];
for (int i = 1; i <= n; i ++ )
b[i]=a[i]+b[i-1];
for (int i = 1; i < n; i ++ )
{
c[i]=c[i-1];
if(b[i]*3==b[n])
c[i]++;
}
for (int i = 2; i < n; i ++ )
{
d[i]=d[i-1];
if(b[i]*3==b[n]*2)
d[i]++;
}
for (int i = 1; i < n; i ++ )
{
if(b[i]*3==b[n])
cnt+=(d[n-1]-d[i]);
}
cout << cnt;
}
AcWing 3956. 截断数组(每日一题) - AcWing