leetcode笔记:House Robber II
来源:互联网 发布:mac fn键有什么用 编辑:程序博客网 时间:2024/06/05 08:11
一. 题目描述
Note: This is an extension of House Robber.
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的升级版,只是增加了一点条件,即第一个element 和最后一个element不能同时出现,则需分为两种情况:
第一种情况: 不包括最后一个element;
第二种情况: 不包括第一个element;
两者的最大值即为全局最大值。
三. 示例代码
class Solution {public: int rob(vector<int>& nums) { if (nums.size() == 0) return 0; if (nums.size() == 1) return nums[0]; return max(rob(nums, 0, nums.size()-1), rob(nums, 1, nums.size())); } int rob(vector<int> &nums, int start, int end) { int a = 0, b = 0; for (int i = start; i < end; i++) { int m = max(b, a+nums[i]); a = b; b = m; } return b; }};
四. 小结
无
- leetcode笔记:House Robber II
- LeetCode House Robber II
- [LeetCode] House Robber II
- [leetcode] House Robber II
- 【leetcode】House Robber II
- Leetcode: House Robber II
- leetcode House Robber II
- [leetcode] House Robber II
- [LeetCode]House Robber II
- leetcode--House Robber II
- leetcode House Robber II
- LeetCode House Robber II
- leetcode:House Robber II
- Leetcode: House Robber II
- House Robber II -- leetcode
- leetCode House Robber II
- [Leetcode]House Robber II
- Leetcode: House Robber II
- Linux常用命令大全
- Lie群、Lie代数
- 赶在今天过去之前
- iOS NSNotificationCenter的简单使用
- Android 工具集
- leetcode笔记:House Robber II
- 四,主要菜单界面的创建
- Codeforces Round #328 (Div. 2) C. The Big Race
- bzoj1636&bzoj1699【Usaco2007 Jan】Balanced Lineup
- ImageButton与Button
- Java学习心得(4)——待定
- C++搜索引擎—Xapian中文简介
- SFTP环境搭建及客户代码调用公共方法封装
- IOS UIButton