House Robber
Input: [1,2,3,1]
Output: 4
Explanation: Rob house 1 (money = 1) and then rob house 3 (money = 3).
Total amount you can rob = 1 + 3 = 4.Input: [2,7,9,3,1]
Output: 12
Explanation: Rob house 1 (money = 2), rob house 3 (money = 9) and rob house 5 (money = 1).
Total amount you can rob = 2 + 9 + 1 = 12.Solution
class Solution {
public int rob(int[] nums) {
int prevMax = 0;
int currMax = 0;
for (int i = 0; i < nums.length; i++) {
int val = nums[i];
int temp = currMax;
currMax = Math.max(prevMax + val, currMax);
prevMax = temp;
}
return currMax;
}
}Last updated
