198. House Robber
Input: nums = [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: nums = [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.# @param {Integer[]} nums
# @return {Integer}
def rob(nums)
odd_pos = 0
even_pos = 0
for i in 0...nums.length
if i.even?
even_pos = [even_pos + nums[i], odd_pos].max
elsif i.odd?
odd_pos = [odd_pos + nums[i], even_pos].max
end
end
[odd_pos, even_pos].max
endLast updated