算法设计Week10 LeetCode Algorithms Problem #213 House Robber II
来源:互联网 发布:亚马逊索评软件 编辑:程序博客网 时间:2024/05/29 16:38
题目描述:
After robbing those houses on that street, the thief has found himself a new place for his thievery so that he will not get too much attention. This time, all houses at this place are arranged in a circle. That means the first house is the neighbor of the last one. Meanwhile, the security system for these houses remain the same as for those in the previous street.
Given a list of non-negative integers representing the amount of money of each house, determine the maximum amount of money you can rob tonight without alerting the police.
题目分析:
本题是之前House Robber的升级版。题目中表述房间成环形排列,说明了第一个和最后一个房间不能同时抢劫。这样,可以分两次检查房间,第一次检查编号为0到n-2的房间最大总钱数,第二次检查编号为1到n-1的房间最大总钱数,最后两个值中的最大值就是题目要求的结果。
具体代码如下所示,代码的时间复杂度为
class Solution {public: int rob(vector<int>& nums) { if(nums.size() == 0) return 0; if(nums.size() == 1) return nums[0]; return max(robs(nums, 0, nums.size() - 2), robs(nums, 1, nums.size() - 1)); } int robs(vector<int>& nums, int begin, int end){ vector<int> robmoney(end - begin + 1); robmoney[0] = nums[begin]; robmoney[1] = max(robmoney[0], nums[begin + 1]); for(int i = 2; i <= end - begin; i++){ robmoney[i] = max(robmoney[i - 1], robmoney[i - 2] + nums[i + begin]); } return robmoney[end - begin]; }};
- 算法设计Week10 LeetCode Algorithms Problem #213 House Robber II
- 算法设计Week8 LeetCode Algorithms Problem #198 House Robber
- [LeetCode]problem 213. House Robber II
- leetcode 213 : House Robber II
- leetcode-213 House Robber II
- House Robber II - LeetCode 213
- House Robber II (leetcode 213)
- LeetCode(213) House Robber II
- [leetcode 213]House Robber II
- leetcode 213: House Robber II
- Leetcode #213 House Robber II
- LeetCode 213: House Robber II
- LeetCode 213 House Robber II
- LeetCode 213:House Robber II
- LeetCode 213 House Robber II
- LeetCode 213: House Robber II
- LeetCode[213] House Robber II
- LeetCode(213) House Robber II
- 点gitignore不起作用的解决方法
- 各类资源大全(编程资料,PS等),百度云下载,很全
- JAVA使用JDBC连接,修改MySQL数据库(比较乱)
- android init.rc
- PHP——表单(2.必填)
- 算法设计Week10 LeetCode Algorithms Problem #213 House Robber II
- ORACLE 云上准备预发布环境
- dfs序入门 CF上的几道题
- 《笨办法学python》---更多的变量和打印
- 爬虫-图像网站下载
- 飞机大战游戏实现
- 操作系统实验报告 lab4
- Spring Boot系列(三):Spring Boot转化为json数据格式
- Mac apache Laravel 需要改的一些配置