正文

题目描述:你正想出去走走,但是突然来了一只怪物,幸运的,你有N把剑,每把剑有两个属性,分别是ai和bi。ai表示握着这把剑的攻击力,你可以握着这把剑攻击怪物任意次数,bi表示把这把剑扔向怪物的攻击力,这把剑扔向怪物后,怪物会受bi点伤害,然后你就失去了这把剑这个怪物最多能承受H点攻击,即在受到H点攻击或以上,就会消失请问让怪物消失的最少攻击次数。

那么我们就会想到贪心,肯定是优先用攻击力大的剑,那么我们是应该用ai大的呢?还是bi大的呢?

很明显是合起来最大的。首先我们要知道,先扔再A,和先A(普攻)再扔是一个道理,因为就算你在程序里默认先扔再A,现实生活中还是可以反过来的对不啦~。

然后我们知道,找出最大那把ai的剑,然后bk大于它的都先扔出去,然后再不断用这把剑A。明显,没有什么其他的方案比这个更优。

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;int n;
long long h;
struct node{//1为a,2为b int d,x;bool operator<(const node y)const{return d>y.d;}
}s[200010];int main(){freopen("b.in","r",stdin);freopen("b.out","w",stdout);scanf("%d %lld",&n,&h);for(register int i=1;i<=n;i++) {int x,y;scanf("%d %d",&x,&y);s[2*i-1].d=x;s[2*i-1].x=1; s[2*i].d=y;s[2*i].x=2;} n*=2;sort(s+1,s+1+n);long long tot=0;int ans=0;for(register int i=1;i<=n;i++){if(s[i].x==2){tot+=s[i].d;ans++;}else break;if(tot>=h) break;}if(tot>=h) {printf("%d\n",ans);return 0;} h-=tot;if(h%s[ans+1].d==0) ans+=h/s[ans+1].d;else ans+=h/s[ans+1].d+1;printf("%d\n",ans);
}

LZJ的圣剑,第二次模拟赛,贪心相关推荐

  1. 第十四届蓝桥杯第二期模拟赛 【python】

    第十四届蓝桥杯第二期模拟赛 [python] 文章目录 第十四届蓝桥杯第二期模拟赛 [python] ✨最小的2022 (python二进制) ❓️问题描述 答案提交

  2. 蓝桥杯|2021第十二届蓝桥杯第二次模拟赛真题与解答[Java]

    记录2021年第十二届蓝桥杯第二次模拟赛真题与解题,部分答案来自网络.个人记录,菜得很. 目录 填空题 一 二 三 四 五 编程题 六 七 八 九 十 填空题 一 问题描述 请问在 1 到 2020 ...

  3. 蓝桥杯2021 第二期模拟赛

    目录: 1.二进制数 2.整倍数 3.要求序列 4.无向图的结点 5.字母距离 6.时间调整 7.平行四边形 好久不见xdm,今天写什么呢?今天被蓝桥杯模拟赛打了一顿,说难也不难 一起来看吧 1.二进 ...

  4. 第十二届蓝桥杯第二期模拟赛(java) python解法

    A 问题描述 小明要用二进制来表示 1 到 10000 的所有整数,要求不同的整数用不同的二进制数表示,请问,为了表示 1 到 10000 的所有整数,至少需要多少个二进制位? 结果:14 print ...

  5. 「Vijos 1285」「OIBH杯NOIP2006第二次模拟赛」佳佳的魔法药水

    佳佳的魔法药水 背景 发完了k张照片,佳佳却得到了一个坏消息:他的MM得病了!佳佳和大家一样焦急万分!治好MM的病只有一种办法,那就是传说中的0号药水--怎么样才能得到0号药水呢?你要知道佳佳的家境也 ...

  6. 蓝桥杯第二次模拟赛JAVA题解

  7. 蓝桥杯模拟赛第二场(web)

    文章目录 蓝桥杯模拟赛第二场(web) 1 卡片化标签页 2 随机数生成器 3 个人博客 4 学生成绩统计 5 水果摆盘 6 给页面化个妆 7 小兔子爬楼梯 8 时间管理大师 9 购物车 10 菜单树 ...

  8. 2020.03.18模拟赛17(第二题)

    2.[GDKOI训练]音乐节拍(mnotes) 题目描述 FJ准备教他的奶牛弹奏一首歌曲,歌曲由N(1<=N<=50,000)种音节组成,编号为1到N,而且一定按照从1到N的顺序进行弹奏, ...

  9. 2021年 第十二届蓝桥杯第二期校内模拟赛题解(Java版)

    时隔多日,终于会写一些简单DP了哈哈哈! 稍微改版,方便阅读,若有错,请指出 2019年 第十届蓝桥杯省赛题解(JavaB组版) 2020年 第十一届蓝桥杯第一场省赛题解(JavaB组版) 2020年 ...

  10. 【WZOI第二次NOIP模拟赛Day1T2】世界末日 解题报告

    [WZOI第二次NOIP模拟赛Day1T2]世界末日 Problem 2 世界末日 (doomsday.pas/c/cpp) 背景 话说CWQ大牛终于打开了那扇神秘大门,但迎接他的不是什么神秘的东西, ...

最新文章

  1. Udacity机器人软件工程师课程笔记(十)-ROS-Catkin-包(package)和gazebo
  2. MVP 2008全球峰会可预订宾馆,寻室友
  3. python 提高文件查询效率_Python 大量小文件存储提高效率的简单示例
  4. 使用JWT进行跨域身份验证
  5. 腾讯抗黑灰产——自监督发现行话黑词识别一词多义
  6. Unity3d 手机屏幕自动适配
  7. Pytorch torch.topk()的简单用法
  8. android 关闭上下文菜单,【Android笔记】ContextMenu上下文菜单
  9. linux多线程编程介绍
  10. MYSQL8.0 OCP考试题库(如需完整版请留言)
  11. 载波频率成分法——理论公式
  12. 使用冒泡排序实现数字的升序排列
  13. Python爬虫天气预报(小白入门)
  14. Flutter 热更新功能实现
  15. 机器学习之变分推断(三)基于平均场假设变分推断与广义EM
  16. jQuery学习-基本使用
  17. Flutter 淡入淡出效果
  18. 【NOIP2016提高A组模拟9.24】天使的分裂
  19. 苹果手机计算机怎么看计算历史记录,苹果计算机怎么看计算记录
  20. 《惢客创业日记》2019.05.09(周四)给美女让座的大叔

热门文章

  1. [交互问题]XML 解析错误:格式不佳
  2. libvirt live migration 流程
  3. CSDN独家全网首发专栏 | 《目标检测YOLO改进指南》改进涨点推荐!
  4. 5G 38.300 Rel15 中文版
  5. Cisco Packet Tracer Student 两个路由器级联
  6. selenium操作firefox
  7. 移动App测试中的最佳做法
  8. ElasticSearch 7.X的基础教程二(Es安装教程)
  9. Java基础英语单词表
  10. 部署CM报错(7):hue无法访问hbase报错:HBase Thrift 1 server cannot be contacted: Could not connect to hadoop02:90