南邮 OJ 2046 FREETALK的小游戏

FREETALK的小游戏

时间限制(普通/Java) :  1000 MS/ 3000 MS          运行内存限制 : 65536 KByte
总提交 : 179            测试通过 : 57 

比赛描述

Freetalk是科协的传统活动,每周五晚都会举办一次freetalk,让科协的成员们围在一起愉快的聊天,愉快的玩耍。Freetalk的主持者,往往都是办公室的同学。为了把freetalk办得新颖、生动、有趣,办公室的同学,尤其是顾主席,每次都要花费很多的心思来准备。这周的freetalk又要开始了,这次,顾主席想出了一个有趣的游戏。游戏的规则是这样的:在一张桌子上放上一个空的大杯子,和n个装满水的马克杯。所有的玩家依次轮流进行游戏,当到一个玩家来进行游戏时,这名玩家要选出一个装满水的马克杯,并将其中的水全部倒入大杯子中,如果大杯子里的水溢出了,那么我们就认为这名玩家输了。

顾主席觉得这个游戏挺不错的,不过他有一点顾虑,如果每轮游戏都会有人输,那么输的那个人肯定就会不开心了,这样可不太好,顾主席是不希望有人不开心的。因此,顾主席想找出是否有这样一种方式,使得除了顾主席以外的所有人都不会输。现在我们告诉你所有马克杯的容积和大杯子的容积。除此之外,你应该知道,除了顾主席以外还有(n-1)个人要玩这个游戏。请你判断一下,是否有这样一种可能,除了顾主席以外的(n-1)个人里面,没有人会输。




输入

第一行,包含两个整数n和s(2 <= n <= 100; 1 <= s <= 1000),分别表示马克杯的数目还有大杯子的容积,下一行包含n个整数,a1,a2,...,an(1 <= ai <= 10),数字ai表示第i个马克杯的体积。

输出

在单独的一行,打印“YES”(不包括引号),如果除了顾主席以外的(n-1)个人可能都不会输,否则,打印“NO”。

样例输入

3 4
1 1 1

样例输出

YES

提示

input

3 4

3 1 3

output

YES

 

input

3 4

4 4 4

output

NO


题目来源

B12040331





#include<iostream>
using namespace std;

int main(){
	int n,s,*a,sum,max_a,i;
	cin>>n>>s;
	a = new int[n];
	for(sum=0,max_a=0,i=0;i<n;++i){
		cin>>a[i];
		sum += a[i];
		if(max_a<a[i]){
			max_a = a[i];
		}
	}
	if(sum-max_a<=s){
		cout<<"YES"<<endl;
	}else{
		cout<<"NO"<<endl;
	}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值