leetcode-213 House Robber II

来源:互联网 发布:php优缺点 编辑:程序博客网 时间:2024/05/16 05:58

Twice pass:

  1. rob nums[0](抢第一个,不抢最后一个房子)
  2. not rob nums[0](不抢第一个,抢最后一个)

<span style="font-family:Microsoft YaHei;font-size:14px;">class Solution {public:    int rob(vector<int>& nums) {        int len = nums.size();        if(len == 0) return 0;        if(len == 1) return nums[0];                int res1 = 0, prev1 = 0;                       for(int i = 0; i < len -1; i++){            int tmp = prev1;            prev1 = res1;            res1 = max(tmp+nums[i],prev1);        }                int res2 = 0,prev2 = 0;        for(int j = 1; j < len; j++){            int tmp = prev2;            prev2 = res2;            res2 = max(tmp+nums[j],prev2);        }        return max(res1,res2);    }};</span>


0 0