还是跪了n发
开始比大小跑数组
后来想起了以前的做法 记两个和跑
#include <iostream>
#include <cstdio>
using namespace std;
const int MAX = 100100;
int n;
int data[MAX];
int main()
{
int n;
while(cin>>n)
{
for(int i = 0; i < n; i ++)
cin>>data[i];
if(n == 1)
{
cout<<"1 0"<<endl;
continue;
}
int ans1 = 0,ans2 = 0;
int l = 0,r = n-1;
int sum1 = data[l],sum2 = data[r];
while(1)
{
if(sum1 <= sum2 && l+1<r)
{
sum1 += data[++l];
}
else if(sum1 > sum2 && r-1>l )
{
sum2 += data[--r];
}
else
break;
}
cout<<l+1<<" "<<n-r<<endl;
}
return 0;
}