简单多状态dp第一弹 leetcode -面试题17.16.按摩师 -213.打家劫舍II

a​​​​​​​面试题 17.16. 按摩师

按摩师

题目:

分析:

使用动态规划解决

状态表示:

dp[i] 表示:选择到 i 位置时,此时的最长预约时长。

但是我们这个题在 i 位置的时候,会面临 选择 或者 不选择 两种抉择,所依赖的状态需要
细分:

f[i] 表示:选择到 i 位置时, nums[i] 必选,此时的最长预约时长。
g[i] 表示:选择到 i 位置时, nums[i] 不选,此时的最长预约时长。

状态转移方程:

因为状态表示定义了两个,因此我们的状态转移方程也要分析两个:

对于 f[i]

  如果 nums[i] 必选,那么我们仅需知道 i - 1 位置在不选的情况下的最长预约时长,
然后加上 nums[i] 即可,因此 f[i] = g[i - 1] + nums[i] 。

对于g[i]

  如果 nums[i] 不选,那么 i - 1 位置上选或者不选都可以。所以我们需要知道i-1位置上或者不选两种情况下的最长时间,所以g[i] = max(f[i - 1],g[i-1])。

源码:

class Solution {
public:int massage(vector<int>& nums) {int n=nums.size();vector<int>f(n+1);//选vector<int>g(n+1);//不选if(n==0){return 0;}f[0]=nums[0];for(int i=1;i<n;i++){f[i]=g[i-1]+nums[i];g[i]=max(g[i-1],f[i-1]);}return max(f[n-1],g[n-1]);}
};


213. 打家劫舍 II

打家劫舍II

题目:

分析:

使用动态规划解决

1.偷第一个房屋时的最大金额 x ,此时不能偷最后一个房子,因此就是偷 [0, n - 2] 区间
的房子;


2.不偷第一个房屋时的最大金额 y ,此时可以偷最后一个房子,因此就是偷 [1, n - 1]
间的房子;

两种情况下的「最大值」,就是最终的结果。(做两次打家劫舍I)

代码:

class Solution {
public:int rob(vector<int>& nums) {int n=nums.size();return max(rob1(nums,2,n-2)+nums[0],rob1(nums,1,n-1));}int rob1(vector<int>num,int l,int r){int n=num.size();if(l>r)return 0;vector<int>f(n+1);vector<int>g(n+1);f[l]=num[l];for(int i=l+1;i<=r;i++){f[i]=g[i-1]+num[i];g[i]=max(g[i-1],f[i-1]);}return max(f[r],g[r]);}};

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

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

相关文章

集成学习详细介绍

以下内容整理于&#xff1a; 斯图尔特.罗素, 人工智能.现代方法 第四版(张博雅等译)机器学习_温州大学_中国大学MOOC(慕课)XGBoost原理介绍------个人理解版_xgboost原理介绍 个人理解-CSDN博客 集成学习(ensemble)&#xff1a;选择一个由一系列假设h1, h2, …, hn构成的集合…

C++/Qt 集成 AutoHotkey

C/Qt 集成 AutoHotkey 前言AutoHotkey 介绍 方案一&#xff1a;子进程启动编写AutoHotkey脚本准备 AutoHotkey 运行环境编写 C/Qt 代码 方案二&#xff1a;显式动态链接方案探索编译动态链接库集成到C工程关于AutoHotkeyDll.dll中的函数原型 总结 前言 上一篇介绍了AutoHotkey…

从理论再到实践:AI大模型学习路线,提升核心竞争力,看这篇就够了

一、初聊大模型 1、什么是大模型&#xff1f; 大模型&#xff0c;通常指的是在人工智能领域中的大型预训练模型。你可以把它们想象成非常聪明的大脑&#xff0c;这些大脑通过阅读大量的文本、图片、声音等信息&#xff0c;学习到了世界的知识。这些大脑&#xff08;模型&#…

基于 Qwen2.5-Coder 模型和 CrewAI 多智能体框架,实现智能编程系统的实战教程

9 月 19 日&#xff0c;阿里开源了 Qwen2.5 系列大模型全家桶&#xff1a;除常规的语言模型 Qwen2.5 之外&#xff0c;还发布了专门针对编程的Qwen2.5-Coder模型和数学的 Qwen2.5-Math 模型&#xff0c;并且针对每个模型都提供了不同规模参数版本&#xff0c;包括&#xff1a; …

CSP-CCF★★★201909-2小明种苹果(续)★★★

一、问题描述 二、解答 关键&#xff1a;判断是否发生苹果掉落&#xff0c;使用flag[]数组来标记&#xff0c;1为掉落&#xff0c;0为没有掉落&#xff0c;这样也是为了后续比较连续三棵树是否掉落 误区&#xff1a;用最后一次正数&#xff08;即最后一次统计苹果个数&#x…

芯片开发(1)---BQ76905---底层参数配置

主要开发思路:AFE主要是采集、保护功能、均衡&#xff0c;所以要逐一去配置芯片的寄存器 采集、均衡功能主要是配置引脚 保护功能主要是参数寄存器配置&#xff0c;至于如何使用命令修改寄存器参数该系列芯片提供了子命令和直接命令两种方式 BQ76905的管脚配置 I、参数配置 …

AI赋能篇:万物皆可播,AI视频直播新趋势,轻松打造24h不间断开播!

AI赋能篇&#xff1a;万物皆可播&#xff0c;AI视频直播新趋势&#xff0c;轻松打造24h不间断开播&#xff01; 在数字化浪潮的推动下&#xff0c;人工智能&#xff08;AI&#xff09;正以前所未有的速度渗透到我们生活的每一个角落&#xff0c;其中&#xff0c;AI视频直播作为…

工控一体机在高精度玻璃检测机中的应用

工控一体机在高精度玻璃检测机中的应用主要体现在以下几个方面&#xff1a; 一、数据采集与处理 工控一体机作为工业控制计算机&#xff0c;能够高效采集来自高精度玻璃检测机中各种传感器和执行器的数据。这些数据包括但不限于玻璃表面的图像信息、厚度、温度、光学特性等。…

05 基于STM32的DHT11温湿度获取及OLED显示(库函数)

本专栏所有源资料都免费获取,无任何隐形消费。 注意事项:STM32仿真会存在各种各样BUG,且尽量按照同样仿真版本使用。本专栏所有的仿真都采用PROTEUS8.15。 本文已经配置好STM32F103C8T6系列,在PROTUES仿真里,32单片机一般只用一种型号,如需其他型号,可改名。 本次功能…

初中数学证明集锦之三角形内角和

导言 非常喜欢数学那套&#xff0c;由简单到复杂&#xff0c;逐层递进的证明之美。 既证了&#xff0c;而且明了 &#x1f603; 让人不得不信服&#xff01; 由人教版教材看到的三角形内角和180度的证明法&#xff0c;觉得现在课本不单传播了知识&#xff0c;而且点睛数学之…

STM32CubeIDE | 使用HAL库的ADC读取内部传感器温度

1、cubemx配置 1.1、系统配置 1.2、GPIO配置 PB2设置为“GPIO_Output” user label设置为“LED” 1.3、串口配置 模式选择为“Asynchronous”&#xff0c;其他默认 1.4、时钟树配置 全部保持默认 2、ADC配置 通道选择“Temperature Sensor Channel”&#xff0c;其他默认 …

一个 ospf 的 hub-spoke 例子

一、拓扑&#xff1a; 要求&#xff1a;利用 ospf igp配置&#xff0c;使两个 Spoke 之间的流量经过 Hub 端 二、配置思路&#xff1a; 1、基本环境搭建&#xff1a; SW1 起 vlan 10、20、30&#xff1b; 配置 G0/0/1、2、3 接口分别为 hybrid 类型&#xff08;默认&…

自建数据库VS云数据库:从《中国数据库前世今生》看未来数据管理的抉择

自建数据库VS云数据库&#xff1a;从《中国数据库前世今生》看未来数据管理的抉择 在数字化时代的滚滚洪流中&#xff0c;数据库作为核心数据管理工具&#xff0c;始终扮演着至关重要的角色。最近观看了纪录片《中国数据库前世今生》&#xff0c;让我对数据库技术的发展有了更…

cesium.js 入门到精通(5-2)

在cesium 的配置中 有一些参数 可以配置地图的显示 显示出 水的动态显示 山的效果 相当于一些动画显示的效果 var viewer new Cesium.Viewer("cesiumContainer", {infoBox: false,terrainProvider: await Cesium.createWorldTerrainAsync({requestWaterMask: tru…

漏洞复现_永恒之蓝

1.概述 永恒之蓝&#xff08;EternalBlue&#xff09;是一个影响Windows操作系统的远程代码执行漏洞&#xff0c;编号为CVE-2017-0144&#xff0c;最初由美国国家安全局&#xff08;NSA&#xff09;开发并利用&#xff0c;后来被黑客组织Shadow Brokers泄露。该漏洞存在于SMBv…

自注意力(self_attention)和位置编码

目录 1.自注意力&#xff08;self_attention&#xff09;公式 2.代码实现 2.1位置编码的代码实现 3.知识点个人理解 1.自注意力&#xff08;self_attention&#xff09;公式 2.代码实现 import math import torch from torch import nn import dltoolsnum_hiddens, num_he…

assign是赋值,不是连接

如下图是一个top文件的背压 如果把原本应该是外界输入的变量m_ip_hdr_ready通过phv_parser_hdr_ready来“赋值&#xff01;&#xff01;&#xff01;”&#xff0c;那么模块内部本该有的ready信号&#xff0c;就会是Z高阻态&#xff0c;因为没有给到值。 正确的赋值 将整个模…

GEE教程:利用sentinel-2数据进行ndwi和ndci指数的计算和下载

目录 简介 函数 normalizedDifference(bandNames) Arguments: Returns: Image Export.image.toDrive(image, description, folder, fileNamePrefix, dimensions, region, scale, crs, crsTransform, maxPixels, shardSize, fileDimensions, skipEmptyTiles, fileFormat, …

2024年双十一不容错过的好物分享,最值得买的几款超值单品

2024的“双11”购物狂欢节即将要拉开帷幕&#xff0c;大家有没有物色到心仪的好物呢&#xff1f;平时看中的某一件商品&#xff0c;总想着在最低价时入手&#xff0c;毫无疑问双十一就是最佳时机&#xff0c;毕竟各大电商平台都会推出优惠活动。为此我也特意整理了一份数码好物…