描述

Farmer John最近为奶牛们的图书馆添置了一个巨大的书架,尽管它是如此
的大,但它还是几乎瞬间就被各种各样的书塞满了。现在,只有书架的顶上还留
有一点空间。

所有N(1 <= N <= 20,000)头奶牛都有一个确定的身高H_i
(1 <= H_i <= 10,000)。设所有奶牛身高的和为S。书架的高度为B,并且保证
1 <= B <= S < 2,000,000,007。

为了够到比最高的那头奶牛还要高的书架顶,奶牛们不得不象演杂技一般,
一头站在另一头的背上,叠成一座“奶牛塔”。当然,这个塔的高度,就是塔中
所有奶牛的身高之和。为了往书架顶上放东西,所有奶牛的身高和必须不小于书
架的高度。显然,塔中的奶牛数目越多,整座塔就越不稳定,于是奶牛们希望在
能够到书架顶的前提下,让塔中奶牛的数目尽量少。

现在,奶牛们找到了你,希望你帮她们计算这个最小的数目。

输入格式

* 第1行: 2个用空格隔开的整数:N 和 B

* 第2..N+1行: 第i+1行是1个整数:H_i

输出格式

* 第1行: 输出1个整数,即最少要多少头奶牛叠成塔,才能够到书架顶部

测试样例1

输入

6 40 

18 
11 
13 
19 
11

输出

3

备注

输入说明:

一共有6头奶牛,书架的高度为40,奶牛们的身高在6..19之间。

输出说明:

一种只用3头奶牛就达到高度40的方法:18+11+13。当然还有其他方法,在
此不一一列出了。

 
思路:可以从大到小排序数组,再从前往后判断能否够到书架就得了。
代码如下:
 #include <stdio.h>
#include <stdlib.h>
int CKY[];
int z;
int fun(const void *a,const void *b)
{
return *(int*)b-*(int*)a;
}
int main()
{
int x,i,n,a=,b;
scanf("%d%d",&n,&b);
for(i=;i<n;i++)
{
scanf("%d",&CKY[i]);
}
qsort(CKY,n,sizeof(int),fun);
for(i=;i<n&&a<b;i++)
{
a=a+CKY[i];
}
printf("%d\n",i);
return ;
}

Tyvj-超级书架的更多相关文章

  1. 洛谷 P2677 超级书架 2

    P2677 超级书架 2 题目描述 Farmer John最近为奶牛们的图书馆添置了一个巨大的书架,尽管它是如此的大,但它还是几乎瞬间就被各种各样的书塞满了.现在,只有书架的顶上还留有一点空间. 所有 ...

  2. 洛谷 题解 P2676 【超级书架】

    题解 P2676 [超级书架] 这题就只是一个从大到小的排序而已,用"sort"函数 再用"while"判断奶牛塔的高度是否比书架高度要高 送上代码: #inc ...

  3. 1519: 【USACO】超级书架

    1519: [USACO]超级书架 时间限制: 1 Sec 内存限制: 64 MB 提交: 1735 解决: 891 [提交] [状态] [讨论版] [命题人:外部导入] 题目描述 Farmer Jo ...

  4. 【洛谷P2676】超级书架

    题目描述 Farmer John最近为奶牛们的图书馆添置了一个巨大的书架,尽管它是如此的大,但它还是几乎瞬间就被各种各样的书塞满了.现在,只有书架的顶上还留有一点空间. 所有N(1 <= N & ...

  5. 洛谷 P2677 超级书架 2 题解

    传送门 题目描述 Farmer John最近为奶牛们的图书馆添置了一个巨大的书架,尽管它是如此的大,但它还是几乎瞬间就被各种各样的书塞满了.现在,只有书架的顶上还留有一点空间. 所有N(1 <= ...

  6. 洛谷P2677 超级书架 2

    题目描述 Farmer John最近为奶牛们的图书馆添置了一个巨大的书架,尽管它是如此的大,但它还是几乎瞬间就被各种各样的书塞满了.现在,只有书架的顶上还留有一点空间. 所有N(1 <= N & ...

  7. 洛谷P2676 超级书架

    题目描述 Farmer John最近为奶牛们的图书馆添置了一个巨大的书架,尽管它是如此的大,但它还是几乎瞬间就被各种各样的书塞满了.现在,只有书架的顶上还留有一点空间. 所有N(1 <= N & ...

  8. P2676 超级书架

    题目描述 Farmer John最近为奶牛们的图书馆添置了一个巨大的书架,尽管它是如此的大,但它还是几乎瞬间就被各种各样的书塞满了.现在,只有书架的顶上还留有一点空间. 所有N(1 <= N & ...

  9. 洛谷——P2676 超级书架

    https://www.luogu.org/problem/show?pid=2676#sub 题目描述 Farmer John最近为奶牛们的图书馆添置了一个巨大的书架,尽管它是如此的大,但它还是几乎 ...

  10. 洛谷P2676 超级书架 题解

    题目传送门 题目一看就是贪心.C++福利来了:sort. 基本思路就是:要使奶牛最少那么肯定高的奶牛先啦. 直接排序一遍(从高到矮)然后while,搞定! #include<bits/stdc+ ...

随机推荐

  1. 【C#】调用DOS命令

    public interface IRunConsole { void Run(); } public abstract class RunConsole:IRunConsole { public a ...

  2. Exchange 2016 创建日程,远程服务器返回错误: (401) 未经授权

    背景:在测试环境中一切正常,使用的是Exchange2013,上生产环境Exchange2016,部署后产生如下错误: Microsoft.Exchange.WebServices.Data.Serv ...

  3. Go Revel 学习指南

    Go Revel 学习指南 CONTROLLERS(控制器) Routing(路由)http://www.cnblogs.com/hangxin1940/p/3267065.html Paramete ...

  4. Ogre源码编译教程

    最近突然发现Ogre引擎更新到2.1版本了,既然依旧是代码开源,本着学习的精神就下载下来弄弄.但是官网提供的SDK版本只有1.9的,考虑到学习的便利性,因此最好从Source版本开始弄,这样的话以后想 ...

  5. linux学习之linux的hostname修改详解《转》

    linux的hostname是一个kernel变量,可以通过hostname命令来查看本机的hostname.也可以直接cat /proc/sys/kernel/hostname查看. #hostna ...

  6. Linux 学习 step by step (2)

      Linux 学习 step by step (2) Linux,想要我说爱你真的不容易了,尽管,你是ubutun,尽管,你有蛮界面.但是,操作你,还是没有操作windows那么的如鱼得水了.为了更 ...

  7. [Go语言学习]之一:搭建单元测试环境

    最近开始正式的学习Go语言,奉行我学习一项新技术的步骤和原则( 笔记 + 单元测试 + demo ).首先学习了开发环境的配置,并立即搭建了单元测试的环境,这样可以一边写笔记,一边进行测试和学习,从而 ...

  8. Web基础知识和技术

    WEB是一个外延广泛的概念,不单单指网站,乌徒帮专注拥有WEB界面的网站开发,帮助初学者或已经进入开发的朋友们提供参考讨论平台,然而并不一定能将所有的WEB知识讲全讲透,只是能满足初涉者的建站需求,能 ...

  9. Oracle笔记(六) 多表查询

    最近看了李兴华的oracle视频,这是网上别人做的笔记非常细致,分享给大家,第六篇 原创地址:http://www.cnblogs.com/mchina/archive/2012/09/07/2651 ...

  10. C#基础知识——类的继承

    继承是C#的三大特性之一,它实现了多态性和代码复用 我们可能会在一些类中,写一些重复的成员,我们可以将这些重复的成员,单独的封装到一个类中,作为这些类的父类. Student.Teacher.Driv ...