#include <stdio.h>
int main() {
long n;
scanf("%ld",&n);
long data[n];
for(long i=0;i<n;i++)
scanf("%ld",&data[i]);
//两头同时往中间求和的原理
long first=data[0],last=data[n-1],sum=0;
if(first==last)
sum=first;
for(long i=1,j=1;i+j<n;)
{
if(first<last)
{
first+=data[i];
i++;
}
if(first>last)
{
last+=data[(n-1)-j];
j++;
}
if(last==first)
{
sum=first;
first+=data[i];
i++;
}
}
printf("%ld\n",sum);
return 0;
}

京公网安备 11010502036488号