House Robber II

来源:互联网 发布:srt字幕制作软件 编辑:程序博客网 时间:2024/04/28 03:47
class Solution {private:    int robHelp(vector<int> & nums,int start,int end)    {        if(end-start+1==1)            return nums[start];        if(end-start+1==2)            return max(nums[start],nums[start+1]);        vector<int> dp(end-start+1,0);        dp[0]=nums[start];        dp[1]=max(nums[start],nums[start+1]);        for(int i=start+2;i<=end;i++)        {            dp[i-start]=max(dp[i-start-1],dp[i-start-2]+nums[i]);        }        return dp[end-start];    }public:    int rob(vector<int>& nums) {        if(nums.size()==0)            return 0;        else if(nums.size()==1)            return nums[0];        else if(nums.size()==2)            return max(nums[0],nums[1]);        else        {            return max(robHelp(nums,0,nums.size()-2),robHelp(nums,1,nums.size()-1));        }    }};
1 0
原创粉丝点击