题意翻译
n个糖,a从前往后吃,b从后往前吃,每个糖都有吃完需要的时间,每个人在同一时间只能吃一个,吃完某一个后,才能吃下一个,如果两个人同时开始吃同一个,b会让给a,问最后每个人总共吃了多少糖
解题思路:
b发扬了男士的绅士精神,为了避免繁琐的讨论,索性剩下最后一块不做判断,最后输出a吃到的数量,b吃到的数量就是n-a啦
#include<bits/stdc++.h>
using namespace std;
#define MAX 1000006
int a[MAX];
typedef long long ll;
int main()
{
int n;
cin>>n;
for(int i=1; i<=n; i++)cin>>a[i];
int l=1,r=n;
while(r-l>1)
{
if(a[r]>a[l])a[r]-=a[l],l++;
else if(a[l]>a[r])a[l]-=a[r],r--;
else if(a[l]==a[r])l++,r--;
}
printf("%d %d",l,n-l);
}