【简单DP】[NOIP2007 普及组] 守望者的逃离

news2024/11/16 9:42:58

P1095 [NOIP2007 普及组] 守望者的逃离 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

题意:

思路:

独立做出来的一道DP!

一开始我去模拟过程找子问题,然后去找阶段是什么

本来想的是以路程作为阶段,但是1e8数组开不下

那么剩下的只有把时间轴当作阶段了

确定阶段之后,我们去确定状态

我们发现,在同一阶段,蓝的数量会影响决策

因为如果没有蓝就不能用蓝了

所以我们设dp[i][j] 表示在时刻 i 之内,拥有 j 点蓝,能走的最大距离

因为是最大值,因此数组要初始化成-inf

然后第0秒的蓝是0,这个是合法状态,初始化为0就行

然后把答案和S去对比一下,看看输出YES还是NO

这个状态设计包含了所有情况,因此是可行滴

然后我们去状态转移

即我们去枚举决策和上一层的状态

有三种决策:用10点蓝换距离,跑步,恢复蓝

当然恢复蓝的前提是前面的蓝>=4

因此状态转移方程就是:

然后因为如果能跑出的话,要输出时间

因此我们要求第一个>=S的时间

这里在转移的时候维护一下就行

因为开数组会开不下,所以可以滚动数组

这样就写好了

Code:

总结:

数组开太大,如果只取决于i-1层的状态,就可以开滚动数组

如果还取决于别的,那就考虑数据结构优化

如果DP过于暴力的时候也考虑数据结构优化

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/136825.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何看待PyTorch 2.0?

作者|吴育昕 1 为什么是TorchDynamo Graph capture 把用户 Python 写的模型代码变成 graph,是一切编译的根基。而 PyTorch 在试了这么多方案之后似乎已经锁定 TorchDynamo 作为 graph capture 的未来方向了,所以写一点关于 TorchDynamo 的…

假如面试官问你Babel的原理该怎么回答

1. 什么是 Babel 简单地说,Babel 能够转译 ECMAScript 2015 的代码,使它在旧的浏览器或者环境中也能够运行。 // es2015 的 const 和 arrow function const add (a, b) > a b;// Babel 转译后 var add function add(a, b) {return a b; };Babel…

pwr | 谁说样本量计算是个老大难问题!?(二)(独立样本均值篇)

1写在前面 上次介绍了两组发生率的样本量计算方法,通过pwr包进行计算非常简单,可以有效地减少我们的工作量。😘 有时候我们想比较两组之间的均值,如何计算样本量又一次成了老大难问题。🤒 本期我们还是基于pwr包&#…

【自学Java】Windows安装PyCharm IDE

Windows安装PyCharm IDE PyCharm下载 PyCharm下载地址 https://www.jetbrains.com/pycharm/PyCharm下载 打开上面的链接,打开 Python 的开发工具 PyCharm 的下载页面,如下图所示: 这里我们点击 Download,跳转到新的页面&#…

错过短视频,微博奔向新浪

以后新浪或许会被叫做“微博新浪”。 2022年12月23日晚,港股微博发布公告称,拟斥资15亿元收购新浪网技术有限公司100%股权。此举被外界解读为微博将反向收购新浪。 曾经,微博还是新浪移动互联网时代的“船票”。随着门户网站逐渐凋零&#…

基于ODX/OTX诊断的整车扫描

| ODX (Open Diagnostic data eXchange) 是基于XML语言、开放的诊断数据格式,用于车辆整个生命周期中诊断数据的交互。它一开始由ASAM提出并形成标准MCD-2D,后来以ODX2.2.0为基础形成了ISO标准——ISO 22901-1。 | OTX (Open Test sequence eXchange) …

Redis主从复制哨兵模式

Redis主从复制&哨兵模式一 什么是Redis主从复制1.1 主从复制的架构1.2 主从复制的原理1.3 主库是否要开启持久化1.4 辅助配置(主从数据一致性配置)二 主从复制配置2.1 slave 命令2.2 配置文件三 主从复制常见问题四 Redis哨兵机制4.1 什么是哨兵模式…

WebSocket服务端和客户端代码示例

目录一、WebSocket简介二、WebSocket服务端代码示例三、WebSocket客户端代码示例四、运行服务端和客户端,查看输出结果一、WebSocket简介 WebSocket协议是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工(full-duplex)通信&#x…

UE4 优化笔记

一、衡量场景性能的指标(这些指标优化前就要先记录下来,这样才知道优化了多少!) 1.stat unit:单元的状态。最开始根据这个数据,确定大致的优化方向 Frame:每帧消耗的总时长 Game:游戏线程运行消耗的时间 D…

迭代最近点ICP点云配准

传统ICP存在匹配速度慢,误匹配率高等缺点。 粗配准是在不清楚两个点云的相对位置的情况下,找到这两个点云近似的旋转平移矩阵,主要是为精配准提供初始变换矩阵;精配准在已知旋转平移矩阵的情况下,通过多次迭代优化进一…

Redis超详细版教程通俗易懂

【狂神说Java】Redis最新超详细教程通俗易懂 一、缓存、关系型数据库、非关系型数据库 关系型数据库存放在磁盘上,读取数据需要IO操作,速度非常慢非关系型数据库存放在内存上,读取数据速度非常快两者关系:一般会将数据存储在关系…

BGP在数据中心的应用4——BGP配置再优化

注: 本文根据《BGP in the Datacenter》整理,有兴趣和英文阅读能力的朋友可以直接看原文:https://www.oreilly.com/library/view/bgp-in-the/9781491983416/上一部分笔记请参考:https://blog.csdn.net/tushanpeipei/article/deta…

图论(3)单源最短路拓展

活动 - AcWing acw1137 如果我们确定了起点,那么就是一个模板题 选起点有两个办法:1.选取虚拟原点,连接家附近的所有车站。直接以虚拟原点作为我起点跑最短路即可。2.反向建图,取终点到家附近所有车站的dist,取min即…

JVM垃圾回收器-Serial回收器:串行回收

文章目录学习资料垃圾回收器Serial回收器:串行回收学习资料 【尚硅谷宋红康JVM全套教程(详解java虚拟机)】 【阿里巴巴Java开发手册】https://www.w3cschool.cn/alibaba_java JDK 8 JVM官方手册 垃圾回收器 Serial回收器:串行回…

JVM垃圾回收相关算法-垃圾清除阶段

文章目录学习资料垃圾回收相关算法垃圾清除阶段标记-清除(Mark - Sweep)算法复制算法标记-压缩(或标记-整理、Mark - Compact)算法分代收集算法增量收集算法分区算法学习资料 【尚硅谷宋红康JVM全套教程(详解java虚拟…

助力工业物联网,工业大数据项目介绍及环境构建【三】

01:业务系统结构 目标:了解一站制造中的业务系统结构 实施 数据来源 业务流程 油站站点联系呼叫中心,申请工单呼叫中心分派工单给工程师工程师完成工单工程师费用报销呼叫中心回访工单 ERP系统:企业资源管理系统,存…

RHCSE第一天(Linux的例行性工作)

文章目录Linux搭建服务器的准备工作第一章 Linux的例行性工作1.1 单一执行的例行性工作at1.1.1 at命令的实际工作过程1.1.2 at命令详解1.2 循环执行的例行性工作1.2.1 crontab命令的实际工作过程1.2.2 crontab命令详解1.3 实验实验一:定义三分钟之后显示hello实验二…

【前端】Vue项目:旅游App-(4)TabBar:Vant库实现功能与样式

文章目录目标代码和过程Vant库引入自定义样式初步修改样式修改修改active颜色icon调大实现路由跳转效果总代码修改的文件tab-bar.vuemain.js目标 前文手写了TabBar的样式和功能,本篇我们用vant库重新实现这些功能。 代码和过程 Vant库引入 Vant4 官方文档 安装&…

Servlet运行原理及生命周期

Servlet运行原理及生命周期一、Servlet 运行原理1.1 Tomcat 的定位1.2 Tomcat 的伪代码1.2.1 Tomcat 初始化流程1.2.2 Tomcat 处理请求流程1.2.3 Servlet 的 service 方法的实现二、Servlet生命周期一、Servlet 运行原理 承接 Servlet基础教程:https://blog.csdn.n…

spring oAuth2.0

会话 用户认证通过后,为了避免用户的每次操作都进行认证可将用户的信息保证在会话中。会话就是系统为了保持当前用户的登录状态所提供的机制,常见的有基于session方式,基于token方式等。 基于session的认证方式: 用户认证成功后&a…