首页 > 代码库 > (HDU)1205 -- 吃糖果
(HDU)1205 -- 吃糖果
题目链接:http://vjudge.net/problem/HDU-1205
分析:我们只要考虑数目最多的那种糖果,假设有N个,它中间有N-1个空,如果剩下的所有糖果可以将这N-1个空填上,那么肯定可以达到题目的要求。因为考虑的已经是数目最多的糖果了,所以一定存在某种顺序将剩下的糖果全部隔开。
1 #include <cstdio> 2 #include <cstring> 3 #include <cmath> 4 #include <iostream> 5 #include <algorithm> 6 #include <string> 7 #include <cstdlib> 8 9 using namespace std; 10 11 long long num[1000010]; 12 13 int main() 14 { 15 long long n,i,sum; 16 int t; 17 scanf("%d",&t); 18 while(t--) 19 { 20 scanf("%I64d",&n); 21 for(i=1;i<=n;i++) 22 scanf("%I64d",&num[i]); 23 sort(num+1,num+1+n); 24 sum=0; 25 for(i=1;i<n;i++) 26 sum+=num[i]; 27 if(num[i]<=sum+1) printf("Yes\n"); 28 else printf("No\n"); 29 } 30 return 0; 31 }
(HDU)1205 -- 吃糖果
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。