leetcode解题报告:198 House Robber
问题描述:
一个小偷去一个街区偷东西,求偷得价值最大,唯一限制就是不能偷连续的两家,因为这样会触发警报。
建模:
给定一个列表,里面存着每家可以偷的价值,输出最大偷到的价值。
思路:动态规划
如果输入是v1v2...vm,用S[i]表示从v1v2...vi能偷到的最大价值。
递归子问题:S[i] = max(S[i-1], vi + S[i-2])
初如条件:S[0] = 0 S[1] = v1 S[2] = max(S[1], v2 + S[0])
代码:Python
class Solution:# @param num, a list of integer# @return an integerdef rob(self, num):n = len(num)if n == 0:return 0elif n == 1:return num[0]else:s = [0 for i in range(n)]s[0] = num[0]s[1] = max(num[0], num[1])for i in range(2,n):s[i] = max(s[i-1], s[i-2] + num[i])return s[n-1]
转载于:https://blog.51cto.com/koala87/1627134
leetcode解题报告:198 House Robber相关推荐
- LeetCode解题报告汇总
LeetCode解题报告: [LeetCode]1.Two Sum - Yoona - 博客频道 - CSDN.NET [LeetCode]2.Add Two Numbers - Yoona - 博客 ...
- [LeetCode解题报告] LCP 48. 无限棋局
[LeetCode解题报告] LCP 48. 无限棋局 一. 题目 1. 题目描述 2. 原题链接 二. 解题报告 1. 思路分析 2. 复杂度分析 3. 代码实现 三. 本题小结 一. 题目 1. ...
- [LeetCode解题报告] 741. 摘樱桃
[LeetCode解题报告] 741. 摘樱桃 一. 题目 1. 题目描述 2. 原题链接 二. 解题报告 1. 思路分析 2. 复杂度分析 3. 代码实现 三. 本题小结 一. 题目 1. 题目描述 ...
- [LeetCode解题报告] LCP 49. 环形闯关游戏
[LeetCode解题报告] LCP 49. 环形闯关游戏 一. 题目 1. 题目描述 2. 原题链接 二. 解题报告 1. 思路分析 2. 复杂度分析 3. 代码实现 三. 本题小结 四. 参考链接 ...
- [LeetCode解题报告] 365. 水壶问题
[LeetCode解题报告] 365. 水壶问题 一. 题目 1. 题目描述 2. 原题链接 二. 解题报告 1. 思路分析 2. 复杂度分析 3. 代码实现 三. 本题小结 一. 题目 1. 题目描 ...
- LeetCode 解题报告索引
最近在准备找工作的算法题,刷刷LeetCode,以下是我的解题报告索引,每一题几乎都有详细的说明,供各位码农参考.根据我自己做的进度持续更新中...... ...
- leetcode解题报告:188 Best Time to Buy and Sell Stock IV
问题: 给定一个列表,第i个元素代表股票第i天的价值,最多只允许买入卖出k次,求最大收益 思路:动态规划 输入为列表p1p2...pm 代码:Python 转载于:https://blog.51cto ...
- leetcode解题报告:Interleaving String
问题描述: 给定两个字符串s1, s2,判断字符串s3是否是由s1.s2交错构成. 例子: s1 = "aabcc", s2 = "dbbca", When s ...
- 【LeetCode解题报告】《算法基础012_因子和》- Java
目录 一.1390.四因数 1.题目 2.分析 3.代码 一.1390.四因数 1.题目 1390.四因数 给你一个整数数组 nums,请你返回该数组中恰有四个因数的这些整数的各因数之和. 如果数组中 ...
最新文章
- Hadoop 单节点 伪分布 安装手记
- QT中关于按钮以及菜单栏工具添加图标,以及快捷方式
- 【MM模块】ERS and Invoicing Plans 发票计划
- linux-shell命令之rm(remove)【删除文件或目录】
- 【CF1344D】Résumé Review【数学】【二分】
- Linux起不来,如何修复
- 基于阿里云物联网平台,我们这样实现简易出入监控
- jtag引脚定义_从逆向分析的角度学习硬件调试技巧JTAG,SSD和固件提取
- Team Foundation Server 2010 安装、部署与配置(二):安装之前的预备工作 .
- maven如何实现创建带源代码的jar包
- [JS基础] 之类型判断
- 让Win让Win XP自动维护系统 自动维护系统
- Linux 完全卸载 MySQL
- 亿级用户下的新浪微博平台架构
- android 自动语音提醒,Android 语音播报实现方案
- 我的世界服务器自动刷矿机,我的世界空岛刷矿机制作教程
- android edittext 字母数字键盘,android EditText默认数字键盘,能输入字母,数字和中文...
- linux mounted,linux umount命令详解
- 「Python条件结构」if…else实现计算税后工资
- 生地中考总结(也许是对人生的感慨)
热门文章
- 机器学习的入门平台天花板,还可免费实操经典教程,确实也没谁了
- 阿里数学竞赛最年轻金奖得主:15岁读少年班,21岁UC伯克利读博,想毕业就回国...
- 清华姚班校友马腾宇斩获斯隆奖!与鬲融师承一脉,李飞飞点赞祝贺
- 岚图FREE入局之战,手握哪些底牌?
- 小鹏,该兑现PPT了
- 一束激光冒充人声:110米外黑掉智能音箱,手机电脑平板也中招
- 网红送餐无人车被指用人冒充AI始末:没有人工,就没有智能
- 第三节:Windows平台部署Asp.Net Core应用(基于IIS和Windows服务两种模式)
- 【linux kernel】 中断处理-中断下半部【转】
- vue修改打包后静态资源路径