题目大意:
给N个数,一个人从前往后走,一个人从后往前走,把这N个数平均分成两部分。
解题思路:
哪个数小就继续走就行了
代码如下:
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<stdlib.h>
int main()
{
int n,i,s,e,sums,sume;
int num[50];
while(scanf("%d",&n)&&n!=0)
{
for(i=1;i<=n;i++)
{
scanf("%d",&num[i]);
}
sums=num[1];sume=num[n];
s=1;e=n;
while(e-s>1)
{
if(sums<sume)
{
s++;
sums=sums+num[s];
}
else
{
e--;
sume=sume+num[e];
}
}
if(sume==sums)
{
printf("Sam stops at position %d and Ella stops at position %d.\n",s,e);
}
else
{
printf("No equal partitioning.\n");
}
}
return 0;
}