Skip to content

Commit 2b4f382

Browse files
committed
Create 213-House-Robber-II.rb
1 parent f5804fa commit 2b4f382

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

ruby/213-House-Robber-II.rb

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# @param {Integer[]} nums
2+
# @return {Integer}
3+
def rob(nums)
4+
return nums.max if nums.size < 4
5+
6+
dp = Array.new(nums.size + 3) { 0 }
7+
8+
mil = 1_000_000
9+
dp[2] = mil
10+
nums.each_with_index do |num, i|
11+
dp[i + 3] = num + [dp[i], dp[i + 1]].max
12+
end
13+
14+
result = [dp[-1], dp[-2]].max - mil
15+
16+
dp = Array.new(nums.size + 3) { 0 }
17+
18+
dp[1] = mil
19+
nums.each_with_index do |num, i|
20+
dp[i + 3] = num + [dp[i], dp[i + 1]].max
21+
end
22+
23+
[result, [dp[-2], dp[-3]].max - mil].max
24+
end

0 commit comments

Comments
 (0)