AK_HuangYC的博客

人一我十,人十我百

HDU 1205 吃糖果 (抽屉原理)

Problem Description
HOHO,终于从Speakless手上赢走了所有的糖果,是Gardon吃糖果时有个特殊的癖好,就是不喜欢将一样的糖果放在一起吃,喜欢先吃一种,下一次吃另一种,这样;可是Gardon不知道是否存在一种吃糖果的顺序使得他能把所有糖果都吃完?请你写个程序帮忙计算一下。
 

Input
第一行有一个整数T,接下来T组数据,每组数据占2行,第一行是一个整数N(0<N<=1000000),第二行是N个数,表示N种糖果的数目Mi(0<Mi<=1000000)。
 

Output
对于每组数据,输出一行,包含一个"Yes"或者"No"。
 

Sample Input
2 3 4 1 1 5 5 4 3 2 1
 

Sample Output
No Yes
Hint
Hint
Please use function scanf
 

Author
Gardon



将两种糖果平均分成两组,然后根据抽屉原理,只要里面有一个数大于sum/2,就不可能吃完。。。



#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
typedef long long LL;
const int maxn=1000000+10;
LL a[maxn];
int main()
{
	int t,i,j,n,num;
	LL sum,aver,mmax;
	scanf("%d",&t);
	while(t--) {
		sum=0;
		mmax=0;
		scanf("%d",&n);
		for(i=1;i<=n;i++) {
			scanf("%lld",&a[i]);
			sum+=a[i];
			mmax=max(mmax,a[i]);
		}
		aver=(sum+1)/2;
		if(mmax<=aver) printf("Yes\n");
		else printf("No\n");
	}
	return 0;
}








阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/h1021456873/article/details/49914319
个人分类: hdu 抽屉原理
上一篇51nod 1247 可能的路径 (最大公约数变形)
下一篇51nod 1154 回文串划分 (DP)
想对作者说点什么? 我来说一句

糖果游戏

2015年11月23日 1.68MB 下载

数学建模——糖果配比销售

2010年06月01日 123KB 下载

HDU图论题目分类

2013年04月18日 211KB 下载

动态规划背包问题入门

2011年07月07日 328KB 下载

ios源码连连看

2018年04月11日 13.92MB 下载

背包问题模板 hdu2191

2014年06月24日 12KB 下载

抽屉原理及其应用

2014年04月26日 280KB 下载

HDU 递归题详解大全(含代码)

2011年03月31日 113KB 下载

HDU DP动态规划

2010年03月31日 454KB 下载

没有更多推荐了,返回首页

关闭
关闭