class Solution {
public:
int rob(vector<int>& nums) {
int n = nums.size();
int f0 = 0, f1 = 0, f2 = 0;
for (int x : nums) {
f2 = max(f1, f0 + x);
f0 = f1;
f1 = f2;
}
return f1;
// int n = nums.size();
// vector<int> dp(n + 2);
// for (int i = 0; i < n; i++) {
// dp[i + 2] = max(dp[i + 1], dp[i] + nums[i]);
// }
// return dp[n + 1];
}
};

京公网安备 11010502036488号