【鸽巢原理】HDU-1205 吃糖果

在这里插入图片描述
在这里插入图片描述

注解

1、鸽巢原理。
2、只需要判断数目最多的那种,数量是不是比其他的加起来的和还要多?如果多了超过1个,就输出No,否则就是Yes。

代码

#include <iostream>

using namespace std;

typedef long long int LL;

int main() {

    int T;
    scanf("%d", &T);
    for(int i=0; i<T; i++){
        int N;
        scanf("%d", &N);
        LL sum = 0;
        int max = -1;
        for(int j=0; j<N; j++){
            int t;
            scanf("%d", &t);
            sum += t;
            if(t>max){
                max = t;
            }
        }
        if(sum-max+1>=max){
            printf("Yes\n");
        }
        else{
            printf("No\n");
        }
    }

    return 0;
}

结果

在这里插入图片描述

发布了475 篇原创文章 · 获赞 19 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/zhanggirlzhangboy/article/details/103681786