LeetCode213 打家劫舍Ⅱ

 思想和打家劫舍 https://blog.csdn.net/Jeff_Winger/article/details/81779581一致,只不过多算了一次,代码如下:

class Solution {
public:
    int rob(vector& nums) {
        if(nums.size()<=1){
            return nums.size()==0?0:nums[0];
        }
        if(nums.size()==2){
            return max(nums[0],nums[1]);
        }
        int f1=f(nums,0,nums.size()-1);
        int f2=f(nums,1,nums.size());
        return max(f1,f2);
    }
    int f(vector& nums,int begin,int end)
    {
        int b=max(nums[begin+1],nums[begin]),c=nums[begin];
        int a=b;
        for(int i=begin+2;i

 

你可能感兴趣的:(LeetCode/C++)