码迷,mamicode.com
首页 > 其他好文 > 详细

213. House Robber II

时间:2017-07-17 09:54:58      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:discuss   rmi   circle   []   int   tree   alert   time   his   

题目:

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.

链接: http://leetcode.com/problems/house-robber-ii/

7/16/2017

没想明白,照别人写的

注意,其实包括House Robber在内,第11行并不保证小偷一定会偷间隔为1的房子,robber选择的是当前为止,能抢到的最多的而已。因此这道题只要分为2部分:包括头不包括尾+包括尾不包括头,二者选大即可。

另外,robLastHouse并不是说一定rob current house at the end of each loop,而是说我们考虑到了当前的情况。

 1 public class Solution {
 2     public int rob(int[] nums) {
 3         if (nums == null) return 0;
 4         if (nums.length == 1) return nums[0];
 5         return Math.max(rob(nums, 0, nums.length - 2), rob(nums, 1, nums.length - 1));
 6     }
 7 
 8     private int rob(int[] nums, int lo, int hi) {
 9         int res = 0, robLastHouse = 0, notRobLast = 0;
10         for (int i = lo; i <= hi; i++) {
11             res = Math.max(robLastHouse, notRobLast + nums[i]);
12             notRobLast = robLastHouse;
13             robLastHouse = res;
14         }
15         return res;
16     }
17 }

别人的答案

https://discuss.leetcode.com/topic/14375/simple-ac-solution-in-java-in-o-n-with-explanation

https://discuss.leetcode.com/topic/14504/9-lines-0ms-o-1-space-c-solution

更多讨论

https://discuss.leetcode.com/category/221/house-robber-ii

 

213. House Robber II

标签:discuss   rmi   circle   []   int   tree   alert   time   his   

原文地址:http://www.cnblogs.com/panini/p/7192639.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!