链接
代码
双指针
#include <iostream>
#include <algorithm>
using namespace std;
typedef long long ll;
const int N = 2e5 + 10;
int n, a[N];
ll sum1, sum3, res;
int main() {
cin >> n;
for (int i = 0; i < n; ++i) cin >> a[i];
sum1 = a[0], sum3 = a[n - 1];
int l = 0, r = n - 1;
while (l < r){
if (sum1 == sum3){
res = max(res, sum1);
sum1 += a[++l];
sum3 += a[--r];
}
else if (sum1 < sum3){
sum1 += a[++l];
}
else{
sum3 += a[--r];
}
}
cout << res << endl;
return 0;
}