当前位置: 首页 > news >正文

信息学奥赛一本通1228:书架

1228:书架


时间限制: 1000 ms         内存限制: 65536 KB
提交数: 18190     通过数: 10557

【题目描述】

John最近买了一个书架用来存放奶牛养殖书籍,但书架很快被存满了,只剩最顶层有空余。

John共有N�头奶牛(1≤N≤20,0001≤�≤20,000),每头奶牛有自己的高度Hi(1≤Hi≤10,000)��(1≤��≤10,000),N头奶牛的总高度为S�。书架高度为B(1≤B≤S<2,000,000,007)�(1≤�≤�<2,000,000,007)。

为了到达书架顶层,奶牛可以踩着其他奶牛的背,像叠罗汉一样,直到他们的总高度不低于书架高度。当然若奶牛越多则危险性越大。为了帮助John到达书架顶层,找出使用奶牛数目最少的解决方案吧。

【输入】

第1行:空格隔开的整数N�和B�。

第2~N+1行:第i+1�+1行为整数Hi��。

【输出】

能达到书架高度所使用奶牛的最少数目。

【输入样例】

6 40
6
18
11
13
19
11

【输出样例】

3

挺简单的一道题,从大到小排序,一个while循环和sum变量用来判断当前高度是否达到,cnt既是当前的数组下标又是奶牛数量,顺便节约一个变量。题目数据还挺大,用了long long

源码:

#include<bits/stdc++.h>
using namespace std;
long long n,b,h[20001],cnt,sum;
bool comp(long long x,long long y)
{return x>y;
}
int main()
{cin>>n>>b;for(int i=1;i<=n;i++){cin>>h[i];}sort(h+1,h+n+1,comp);while(sum<b){cnt++;sum+=h[cnt];}cout<<cnt;
}

http://www.lryc.cn/news/299592.html

相关文章:

  • 红队打靶练习:GLASGOW SMILE: 1.1
  • 网络安全的今年:量子、生成人工智能以及 LLM 和密码
  • 【FPGA】Verilog:奇偶校验位发生器 | 奇偶校验位校验器
  • 【心得】关于STM32中RTC的校准方法
  • 消息中间件面试篇
  • 【MySQL】-20 MySQL综合-6(MySQL创建数据表+MySQL修改数据表+MySQL删除数据表)
  • linux查看当前连接的IP
  • 洛谷_P1923 【深基9.例4】求第 k 小的数_python写法
  • 【MySQL】学习约束和使用图形化界面创建表
  • QGIS编译(跨平台编译)之四十八:pixman编译(Windows、Linux、MacOS环境下编译)
  • 华为数通方向HCIP-DataCom H12-821题库(单选题:441-460)
  • 【sass】 中使用 /deep/ 修改 elementUI 组件样式报错
  • Python算法题集_排序链表
  • 红日靶场2学习
  • 将 下载下来的 jar 包 安装到本地的 maven 仓库中
  • Qt初使用(使用Qt创建项目,在创建的项目中添加类,Qt中输出内容到控制台,设置窗口大小和窗口标题,Qt查看说明文档)
  • 【黑马程序员】C++运算符重载
  • Java中的乐观锁和悲观锁
  • 从Unity到Three.js(计时器、Transform)
  • 红日靶场(初学)
  • 【PyTorch】改变张量(Tensor)形状操作
  • 《金融人工智能:用python实现ai量化交易》
  • 位运算+leetcode ( 2 )
  • 17 ABCD数码管显示与动态扫描原理
  • 【Zigbee课程设计系列文章】Zigbee开发环境搭建
  • [Linux开发工具]项目自动化构建工具-make/Makefile
  • PLC_博图系列☞参数实例
  • LLaMA 2 和 QianWen-14B
  • 浅谈Java常见设计模式及实例
  • 【RISC-V DSP设计】基于CEVA DSP架构的指令集分析(一)-总体介绍