1. 程式人生 > >HDU - 1205 吃糖果

HDU - 1205 吃糖果

class bits space 是否 std div ont ase 壓力

因為某場比賽某位同學打表沒有打對,而且因為在上一場訓練賽中被寫進了題目裏,他悲痛欲絕,不光在群裏把昵稱改成了 不會打表且沒有去過九裏校區的xxxxx,而且希望通過吃糖來緩解自己的壓力。他非常挑食,從來不連續吃兩顆相同的糖。他有N種糖可以選擇,希望你幫他計算是否能一次性吃完所有的糖。如果可以請輸出Yes,否則輸出No

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


        
 
Please use function scanf

解法:
最多的那一堆糖果有n個,只需要有n-1個其它的糖果間隔開來就好了
代碼:
#include <bits/stdc++.h>
using namespace std;
int n;
int a[1111111];
void deal(){
	scanf("%d",&n);
	for(int i=0;i<n;i++) 
		scanf("%d",&a[i]);
	sort(a,a+n);
	int bj=1;
	long long sum=0;
	for(int i=0;i<n-1;i++){
		sum+=a[i];
	}
	if(sum>=a[n-1]-1) printf("Yes\n");
	else
	printf("No\n");
}
int main()
{
	int t;
	scanf("%d",&t);
	while(t--)
		deal(); 
    return 0;
}

  

HDU - 1205 吃糖果