LeetCode 198
https://leetcode.cn/problems/house-robber/description/
难度:中等
状态转移:
f[i + 2] = max(f[i + 1], f[i] + nums[i]);
时间复杂度:O(n)。其中 n 为 nums 的长度。
空间复杂度:O(n)。
class Solution {
public:
int rob(vector<int>& nums) {
int n = nums.size();
vector<int> f(n + 2);
for (int i = 0; i < n; i++) {
f[i + 2] = max(f[i + 1], f[i] + nums[i]);
}
return f[n + 1];
}
};