题意:一组直线排列的房屋,一个小偷要进屋偷钱,如果小偷偷了相邻两座房屋就会触发报警系统,问在不触发报警系统的前提下小偷最多可以偷到多少钱。

难度:esay

思路:这是一道标准的动态规划问题,创建一个list保存小偷到每个房间能拿到最多的钱,第一个房间为本身,第二个为前两个房间较大者。第i个房间便为(状态转移方程):

dp[i] = max(dp[i - 1], dp[i - 2] + nums[i])
class Solution(object):def rob(self, nums):""":type nums: List[int]:rtype: int"""dp = [0] * len(nums)if not nums:return 0elif len(nums) == 1:return nums[0]dp[0] = nums[0]dp[1] = max(nums[0], nums[1])for i in range(2, len(nums)):dp[i] = max(nums[i] + dp[i - 2], dp[i - 1])return dp[-1]

LeetCode 198 House Robber Python相关推荐

  1. [dp]leetcode 198. House Robber

    输入:一个数组nums,每一个元素nums[i]表示第i个房间的价值. 输出:一个抢劫犯能抢到又不会被警察发现的最大价值. 规则:如果抢劫犯抢了相邻房间,那么报警装置就会触发,警察会得到通知. 分析: ...

  2. LeetCode 198 House Robber(强盗盗窃最大值)(动态规划)(*)

    翻译 你是一个专业强盗,并计划沿街去盗窃每一个住户.每个房子都有一定量的现金,阻止你盗窃的唯一阻碍是相邻的两个房子之间有安全系统.一旦这两个房子同时被盗窃,系统就会自动联系警察.给定一系列非负整数代表 ...

  3. LeetCode 198, 213 House Robber

    198 House Robber DP 0~n-1     ans=dp[n-1] dp[i] = max(dp[i-2]+nums[i], dp[i-1])  i>=2 如果要输出偷了那些房子 ...

  4. LeetCode刷题之python解法(持续更新)

    1. Two Sum 4行 class Solution:def twoSum(self, nums: List[int], target: int) -> List[int]:d = {}fo ...

  5. leetcode 337. House Robber III | 337. 打家劫舍 III(树形dp;什么情况下dp需要强制包含当前元素?)

    题目 https://leetcode.com/problems/house-robber-iii/ 思考:什么情况下 dp 需要强制包含当前元素? dp 过程中,需要包含当前元素 的例子: leet ...

  6. python基础刷题_数据结构与算法LeetCode刷题(Python)

    参考资料: 一.链表 1.  链表的必备知识要点(包括基础知识.刷题中使用的STL等知识) 2.  链表逆序(LeetCode 92 ,206. Reverse Linked List 1,2) 3. ...

  7. leetcode 213. House Robber II | 213. 打家劫舍 II(Java)

    题目 https://leetcode.com/problems/house-robber-ii/ 题解 这道题是「198. 打家劫舍」的进阶,和第 198 题的不同之处是,这道题中的房屋是首尾相连的 ...

  8. 动态规划——打家劫舍(Leetcode 198)

    题目选自Leetcode 198 打家劫舍 动态规划解法: 详解过程 如果你对动态规划还不够了解,不着急,咱慢慢来~~ 解题代码: class Solution { public:int rob(ve ...

  9. LeetCode 其他部分 简单 Python实现

    #LeetCode 其他部分 简单 Python实现 ''' 位1的个数 编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 '1' 的个数(也被称为汉明重量).示例 : 输入: 11 ...

最新文章

  1. 使用Python,OpenCV,K-Means聚类查找图像中最主要的颜色
  2. 今天来说一下我的SAMC
  3. golang fmt格式“占位符”
  4. hal库开启中断关中断_stm32的HAL库开发学习笔记之外部中断
  5. 计算机软件通常分为两大类 它们是,计算机考试题库:计算机考试练习题(79)...
  6. 矩形变弧度角_科普时光 | 下颌角手术需要咬肌切除吗?
  7. 沃尔沃汽车与高德合作:首款纯电动汽车XC40 RECHARGE采用高德方案
  8. SpringCloud工作笔记032---SpringCloud异常(Euruka):Application run failed java.lang.NoSuchMethodError: org.
  9. fedora学习笔记 6:浅谈linux文件系统
  10. 正则表达式批量重命名
  11. 小米路由器能做无线打印服务器吗,将普通打印机连接在小米路由器上能做
  12. 第二语言教学的5c标准是哪5c,第二语言教学法知识小结(一)
  13. mentohust配置
  14. Liunx安装Tomcat
  15. Xcode7 网络请求报错:The resource could not be loaded be
  16. python命令行输入参数_Python命令行参数处理
  17. OGRE粒子系统脚本详解
  18. Serendipity 自动打包上传、Xcode相关文件管理
  19. 2015年8月之 英雄不老
  20. 对某网站被挂黑广告源头分析

热门文章

  1. jmeter时间函数格林尼治时间_Jmeter时间函数工具(参考)
  2. 力扣(Leetcode)-94. 二叉树的中序遍历
  3. wiki维基百科上logo中字母的意思是什么?
  4. Python编程基础:第三十五节 文件删除Delete a File
  5. python 标准差Std() 参数决定有偏或无偏
  6. 微信QQ聊天记录分析工具-微Q
  7. 指向函数的指针--转
  8. 机器学习算法加强——数据清洗
  9. R语言 scorecard包 评分卡
  10. shujufenxi:一季度中国人每天存700亿元!“报复性存款”能带来消费吗?