找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 5799|回复: 0
收起左侧

[米群网刷题小分队] LeetCode 新题 House Robber II 【Java】

[复制链接]

47

主题

2

精华

379

积分

高级会员

Rank: 3Rank: 3

积分
379
发表于 5-20-2015 06:11 AM | 显示全部楼层 |阅读模式

亲!马上注册或者登录会查看更多内容!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
House Robber的延伸,把情况分为第一户不被盗和第一户不一定被盗两种就行了。
public class Solution {
    public int rob(int[] nums) {
        if(nums.length==0)
           return 0;
        if(nums.length==1)
           return nums[0];
                return Math.max(help(nums, 0, nums.length - 2),
                                help(nums, 1, nums.length - 1));
        }

        private int help(int[] nums, int start, int end) {
                int pre = 0;
                int cur = nums[start];
                for(int i =start+1;i<=end;i++){
                        int tmp = Math.max(cur, pre+nums【i】);
                        pre = cur;
                        cur = tmp;
                }
                return cur;
        }
}

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表