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