HDU--1205--吃糖果
阿新 • • 發佈:2018-11-01
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 Please use function scanf
Hint
Hint 參考連結:https://blog.csdn.net/wyf12138/article/details/51582012
#include <iostream> #include <cmath> #include <algorithm> using namespace std; const int N = 1000000; int s[N+1]; int main(void) { int T; cin >> T; while(T--){ int n,max=0; cin >> n; for(int j=0;j<n;j++){ cin >> s[j]; if(s[j] > max) max = s[j]; } int sum=0; int j; for(j=0;j<n;j++){ if(s[j] != max) sum+=s[j]; if(sum >= max-1) break; } if(j==n) printf("No\n"); else printf("Yes\n"); } return 0; }