zoukankan      html  css  js  c++  java
  • HDU 1205 吃糖果

    还是有点心急了。

    思路对了,发现如果有其中一种糖果是大于总数量的一半-1,那么将会无法形成隔板

    1.样例:[4,1,1] 就是对应这种情况--->  |`|`| |,发现,如果当中出现一种类型,总数除去这部分剩下的部分要形成隔板才行,至少是sum-ele+1>=ele

    2.因此,对于每次输入的数,找出最大的数,并确定是否大于数量的一半-1即可。

    3.看了一些题解是属于抽屉原理。不太懂,学一下。

     1 #include <stdio.h>
     2 
     3 __int64 num;
     4 
     5 int main()
     6 {
     7     __int64 sum=0;
     8     int T,n;
     9     scanf("%d",&T);
    10     while(T--)
    11     {
    12         int flag = 0;
    13         sum=0;
    14         scanf("%d",&n);
    15         __int64 max = 0;
    16         for(int i=0;i<n;i++) 
    17         {
    18             scanf("%I64d",&num);
    19             sum += num;
    20             if(max < num) max = num;
    21         }
    22         printf(sum-max+1>=max ? "Yes
    " : "No
    ");
    23     }
    24     return 0;
    25 }
    View Code
  • 相关阅读:
    Java基础中的一些注意点(续)
    Java基础中的一些注意点
    Java基础知识学习
    JavaScript DOM2
    JavaScript window
    函数
    JavaScript数组
    JavaScript循环练习2
    JavaScript循环练习
    JavaScript循环
  • 原文地址:https://www.cnblogs.com/cton/p/3436801.html
Copyright © 2011-2022 走看看