题目
源地址:
http://poj.org/problem?id=1247
理解
让给的肉丸子少的人继续给,直到最后判断是否相等。
代码
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int table[33];
int main(int argc, char const *argv[])
{
int n;
while(cin>>n,n)
{
memset(table,0,sizeof(table));
int i;
for(i=1;i<=n;i++)
{
cin>>table[i];
}
int sumE=0,sumS=0;
int postE=n,postS=1;
while(postS<=postE)
{
if(sumE>=sumS) {sumS+=table[postS];postS++;}
else {sumE+=table[postE];postE--;}
}
if(sumE!=sumS)
{
cout<<"No equal partitioning."<<endl;
}
else cout<<"Sam stops at position "<<--postS<<" and Ella stops at position "<<++postE<<"."<<endl;
}
return 0;
}
更新日志
- 2014年07月23日 已AC。