poj 1247 Magnificent Meatballs

简介:

这道题主要就是先理解题意就成功了一大半。。。很水的题目

题意:就是求当两个人按顺时针方向和按逆时针方向放置肉丸子后,当两个人肉丸子相等时所处的位置。

按以下顺序考虑:

1.如果肉丸的总数是奇数,那就不用往下考虑了,一定不行

2.把总数除以2,然后从host(N=1)开始sum-=seat【i】,一旦sum==0,证明成功;小于0,失败;否则就继续循环。。。

一个很简单的数学问题,我看到网上有写O(n^2)的代码的,不知道怎么考虑的。。。


AC的代码:

#include <stdio.h>

int main()
{
	int n;
	int seat[35];
	int i;
	while(scanf("%d",&n))
	{
		if(n==0)
			return 0;

		int sum=0;
		for(i=1;i<=n;i++)
		{
			scanf("%d",&seat[i]);
			sum+=seat[i];
		}

		if(sum%2)  
        {
			printf("No equal partitioning.\n");
            continue;
        }

		else
			sum/=2;

		for(i=1; ;i++)
		{
			sum-=seat[i];

			if(sum==0)
            {
                printf("Sam stops at position %d and Ella stops at position %d.\n",i,i+1);
                break;  
            }

            else if(sum<0)
            {
                    printf("No equal partitioning.\n");
                    break;
            }
		}
	}

	return 0;
}


相关文章
|
人工智能
POJ 3104 Drying
POJ 3104 Drying
|
算法 数据建模 机器学习/深度学习
poj 3664
http://poj.org/problem?id=3664 进行两轮选举,第一轮选前n进入第二轮,第二轮选最高   #include #include using namespace std; struct vote { int a,b; int c; ...
738 0
|
测试技术
poj-1218 THE DRUNK JAILER 喝醉的狱卒
自己去看看原题; 题目大意: 就是一个狱卒喝醉了,他第一趟吧所有的监狱都带开,第二趟把能把二整除的监狱关闭,第三趟操作能把三整除的监狱; 求最后能逃跑的罪犯数 输入第一个数是代表 测试数据组数 每个数据代表狱卒来回的次数 当作开关问题即可 #include using names...
1013 0
poj-2551-ones
Description Given any integer 0
776 0
|
并行计算 网络架构
poj-1005-l tanink i need a houseboat
Description Fred Mapper is considering purchasing some land in Louisiana to build his house on. In the process of investigating the land, he learned ...
989 0