class Solution { public: int rob(vector<int>& nums) { int n = nums.size(); int f[n + 1]; memset(f, 0, sizeof(f)); f[1] = nums[0]; for (int i = 2; i <= n; ++i) { f[i] = max(f[i - 1], f[i - 2] + nums[i - 1]); } return f[n]; } };