leetcode198_打家劫舍

news2024/9/21 4:31:46

在这里插入图片描述

思路

  • 动态规划
func rob(nums []int) int {
    if len(nums) < 2 {
        return nums[0]
    }

    // dp[i] 表示到第i家为止,小偷能够偷窃到的最高金额
    dp := make([]int, len(nums))

    dp[0] = nums[0]
    dp[1] = max(nums[0], nums[1])
    
    for i:=2; i<len(nums); i++ {
        if nums[i] + dp[i-2] > dp[i-1] {
            dp[i] = nums[i] + dp[i-2]
        }else{
            dp[i] = dp[i-1]
        }
    }

    return max(dp[len(nums)-1], dp[len(nums)-2])
}

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

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

相关文章

制造业BOM管理难点分析 三品PDM系统BOM管理解决方案详情

在当今竞争激烈的市场中&#xff0c;制造企业面临着产品多样化、个性化需求和快速交付的压力。BOM物料清单作为产品数据管理的核心&#xff0c;其准确性和效率直接影响到企业的竞争力。然而&#xff0c;BOM管理在制造企业中往往面临诸多挑战。但是PDM系统的出现让BOM管理变得不…

VisionPro二次开发学习笔记1-创建基于QuickBuild的C#应用程序

创建基于QuickBuild的C#应用程序 使用的QuickBuild应用程序位于&#xff05;VPRO_ROOT&#xff05;/ Samples / Programming / QuickBuild / advancedAppOne.vpp中。在继续之前&#xff0c;可以在QuickBuild中运行该应用程序。 QuickBuild应用程序使用PatMax查找支架的“耳朵…

SSH 和 Telnet 之间的区别

SSH 和 Telnet是帮助用户与远程系统建立连接的两种通信协议&#xff0c;这些通信协议决定了数据如何在网络上的不同设备之间传输&#xff0c;这些设备通常需要通过各种物理和数字环境进行传输&#xff0c;网络协议的主要目标是通信、网络管理和安全。 Telnet Telnet是一种较旧…

如果您的照片从设备中消失请无需惊慌,几个安卓照片恢复工具可以试试

新的手机数据恢复应用程序定期推出&#xff0c;这个市场竞争非常激烈。因此&#xff0c;选择最好的 Android 手机照片恢复应用程序可能是最棘手的部分。这就是为什么我们准备了一份概述&#xff0c;介绍目前被认为是恢复丢失照片最有效的应用程序。 几个安卓照片恢复工具 让我…

Cocos通过Electron打包web应用后,在触屏一体机设备触摸滑动无效问题解决

Cocos通过Electron打包web应用后&#xff0c;在触屏一体机设备触摸滑动无效问题解决 已经很晚了&#xff0c;刚刚解决这个问题&#xff0c;还是想记录一下&#xff0c;因为刚刚接触 cocos 没多久&#xff0c;这个问题困扰了我很久。 背景 接手了一个答题小游戏&#xff0c;由于…

直线度测量仪测量不准时如何快速自检恢复?

直线度测量仪应用于圆形产品的直线度及外径尺寸检测&#xff0c;既有应用于生产线中的在线测量仪又有离线直线度测量仪&#xff0c;但不管哪种设备&#xff0c;都是光学检测设备&#xff0c;也都具备光学设备的特性。 在测量仪的长期使用过程中&#xff0c;难免会遇到测量不准…

2015款到18款奔驰GLC升级为2021款的HU6主机后,实现了触摸屏人机交互和Carplay功能

奔驰GLC是北京奔驰生产的一款中型SUV。有车主将2015款奔驰GLC升级为2021款的HU6主机后&#xff0c;实现了触摸屏人机交互和Carplay功能。该车主分享了使用体验&#xff1a; • Carplay功能&#xff1a;可以直接在车机大屏幕上显示导航、音乐和电话信息&#xff0c;让用户在开车…

中国信息学奥赛专用系统之----NOI Linux 2.0系统安装教程

1、下载NOI Linux 2.0系统&#xff0c;下载地址&#xff1a; https://noiresources.ccf.org.cn/ubuntu-noi-v2.0.iso 2、新建虚拟机 3、开机安装系统 下载插件&#xff0c;可能需要10分钟以上。 5、进系统看看 OK,NOI Linux 2.0系统安装完毕&#xff01;

MySQL面试题全解析:准备面试所需的关键知识点和实战经验

MySQL有哪几种数据存储引擎&#xff1f;有什么区别&#xff1f; MySQL支持多种数据存储引擎&#xff0c;其中最常见的是MyISAM和InnoDB引擎。可以通过使用"show engines"命令查看MySQL支持的存储引擎。 存储方式&#xff1a;MyISAM引擎将数据和索引分别存储在两个不…

手机怎么远程控制电脑屏幕?手机远程控制电脑方法分享

手机与电脑之间的互联互通变得越来越便捷。 无论是工作还是学习&#xff0c;有时我们需要在手机上远程控制电脑屏幕&#xff0c;以完成一些复杂的操作或查看电脑上的文件。 本文将详细介绍几种实用的手机远程控制电脑屏幕的方法&#xff0c;帮助读者轻松实现这一目标。 一、使…

美容院节假日可以做哪些营销活动?博弈美业系统源码|美容院管理系统

美容院在节假日期间开展各种类型的营销活动是必不可少的&#xff0c;可以吸引用户消费或充值、开发新客户、提高客户忠诚度。 在举办各类活动时&#xff0c;可针对不同的用户群体采取不同的活动策略&#xff0c;下面给大家简单列举一些活动策略&#xff0c;门店可在此基础上根…

【Nessus破解及20220412插件】漏洞扫描工具之一,windows版本安装

一、双击安装程序 安装路径默认即可&#xff0c;记住安装的路径在哪里。 一般默认路径都是——C:\Program Files\Tenable\Nessus 等待初始化加载完成。 选择第四个。 选择Tenable.sc&#xff0c;继续下一步。 填写username和密码继续。 安装完是以下界面&#xff0c;目前还不能…

【机器学习之深度学习】神经元、层的基本概念,神经网络以及神经元与线性回归和逻辑回归的相似之处

引言 神经元、层和神经网络是深度学习模型的核心组成部分&#xff0c;它们共同工作&#xff0c;使得深度学习能够处理复杂的数据和任务。通过叠加多个层&#xff0c;可以构建出能够学习复杂函数的深度神经网络 一、神经元和层 深度学习中的神经元和层是构建复杂预测模型的基础…

Unity 使用字符串更改Text指定文字颜色、大小、换行、透明

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、使用字符串改变文字属性的方法&#xff08;一&#xff09;修改颜色&#xff08;二&#xff09;修改大小&#xff08;三&#xff09;换行&#xff08;四&…

SQL注入实例(sqli-labs/less-15)

0、初始页面 1、确定闭合符号 确定符号的闭合 2、爆库名 python脚本爆库名 def inject_database(url):name for i in range(1,20):low 32high 128while low < high:mid (low high) // 2payload "-1 or ascii(substr(database(),%d,1))>%d # " %(i,mid…

从今天开始深入学习 SQL 优化

SQL优化 .SQL优化12.1 selet具体字段 12.2 多用limit 12.3 用union all替换 union 12.4 优化group by 12.5 优化order by 12.6 小表驱动大表 12.7 字段类型使用合理 12.8 优化linit分页 12.9 exist& in的合理利用 12.10 join关联的表不宜过多 12.11 deletein自查询不走索引…

学习记录——day29 网络编程

目录 一、网络编程引入 1.1、IPC通信方式 1&#xff09;内核提供&#xff1a; 无名管道 有名管道 信号 2&#xff09;system V: 消息队列 共享内存 信号量集 1.2、网络通信使用缘由 二、网络发展阶段 2.1 APRAnet阶段 2.2 TCP/IP两个协议阶段…

Java收发邮件笔记

1 关于邮箱的前置知识 1.1 概念部分 邮箱服务器和协议是电子邮件系统中不可或缺的两个组成部分&#xff0c;它们共同确保了电子邮件的顺利发送、接收和管理。 1.1.1 服务器和协议 邮箱服务器 比如常见的QQ邮箱,网易邮箱。 邮箱服务器是一种负责电子邮件收发管理的计算机系…

Rust学习---Hello World

编写 Rust 程序 1.程序文件后缀名: rs 2.文件命名规范:hello_world.rs 3.(例子) 使用命令创建项目&#xff0c;命名为"hello world" 打开 cmd 输入: mkdir hello_world cd hello_world 新建文件 main.rs编译与运行 Rust 程序 1.编译:rustc main.rs&#xff0c;…

【无标题】Unity Asset Hunter 插件

Asset Hunter PRO是Unity的一款插件&#xff0c;用于分析工程内的资源使用情况&#xff0c;资源大小&#xff0c;分析资源依赖关系&#xff0c;可以用来清理项目中未使用的资源。尤其是项目较大时&#xff0c;删除没有使用的资源很有帮助。 对于项目UI图片修改次数过多时&…