• 8I


    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

     Please use function scanf

    // 排列组合中的插空法

     1 #include<stdio.h>
     2 int main()
     3 {
     4     int t,n,m, max;
     5     __int64 sum;    //n*m<=10^6*10^6=10^12
     6     scanf("%d", &t);
     7     while(t--)
     8     {
     9         scanf("%d", &n);
    10         max=0; sum=0;
    11         for(int i=0;i<n;i++)
    12         {
    13             scanf("%d", &m);
    14             sum+=m;
    15             if(m>max) max=m;
    16         }
    17         if(sum-max<max-1) printf("No
    ");
    18         else printf("Yes
    ");
    19     }
    20     return 0;
    21 }
    View Code
  • 相关阅读:
    卸载office密钥的命令
    断言的使用
    stm32的NVIC是什么?
    STM32 Cube mx 安装
    不用移位计算获得高位数据
    分组数据
    Vue Router
    存储过程
    js 中 json.stringfy()将对象、数组转换成字符串
    js中 json对象的转化 JSON.parse()
  • 原文地址:https://www.cnblogs.com/goldenretriever/p/10355620.html
Copyright © 2020-2023  润新知