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

P1156 垃圾陷阱

在这里插入图片描述


这道题要求了两个量,第一个是在能够爬出时爬出的最早时间,另一个是不能爬出时的最长存活时间

首先来思考第一问,如果能够求出能够爬出的最早时间。在这道题中我们似乎能够找到的是两个费用,即生存时间和高度,由于这两个量的范围并不是很大,那么可以试试简单的将这两个量作为dp数组的两个维度。

这时候会出现一个问题,我们是应该将第一个时间的意义作为“在所有时刻中能够存活的时间”还是“能够存活的最长时刻”,假如你以能够存活的所有时间作为维度就会陷入很困难的境地,并且题目给出了每个垃圾出现的时刻,那么我们不如就将“能够存活的最长时刻”作为第一个维度。

那么这个dp数组存放的属性是什么?此题中我们仅仅需要求出是否能够爬出以及爬出的最早时间,并不需要维护其他的量,那么我们可以直接进行可行性dp

另外还有转移方程,在这题中就是对每一个垃圾进行选择增加生存时间和增加高度的决策,那么就直接在dp[i][j]为真的情况下让dp[i + f[i]][j]dp[i][j + h[i]]为真就可以了。

那么这时候我们也能够自然而然的思考出第二问,即能够存活的最长时间就是我们一直对垃圾进行增加能量的操作,而不去增长高度,那么就可以遍历时间取出 dp[maxtime][0]


在这里插入图片描述


http://www.kler.cn/news/343363.html

相关文章:

  • 【特别推荐】探索AWS虚拟机(EC2):云端计算的革命性选择
  • 宠物咖啡馆数字化转型:SpringBoot框架的实践
  • 李宏毅深度学习-循环神经网络RNN
  • 【React】如何对组件加载进行优化
  • 模拟单链表和双链表
  • 零样本主题驱动图像生成新方法!EZIGen:在保持灵活性的同时保留主题身份!
  • 【AI大模型】《多模态持续学习》最新进展综述
  • QTday4
  • 快来了解 Java 内存数据库 H2,不要错过哦
  • 免杀对抗—javaASMMSF源码特征修改汇编调用CS内联C
  • Qt源码-Qt多媒体音频框架
  • 《Image Processing GNN: Breaking Rigidity in Super-Resolution》CVPR2024
  • 鸿蒙OS投票机制
  • 『网络游戏』进入游戏主城UI跳转主城【26】
  • 动态规划-路径问题——931.下降路径最小和
  • AI测试入门:认识Graph RAG
  • 京东零售数据湖应用与实践
  • Graphics2D 打包在Linux运行时中文乱码,展示成方格
  • JavaScript轮播图实现
  • 两个数相加(c语言)