Learn
Practice
Interview
Resources
Newsletter
F
Toggle theme
0
F
0
Toggle menu
Animations
← Back to All Animations
House Robber II
Bookmark
Input
Example 1
Example 2
Simple
Five houses
Single house
Custom
nums
=
[2, 7, 9, 3, 1]
adjacent
2
0
7
1
9
2
3
3
1
4
?
?
?
?
?
?
?
?
case 1
case 2
case 1 =
?
case 2 =
?
answer = max(rob(0..3), rob(1..4))
adjacent
2
0
7
1
9
2
3
3
1
4
?
?
?
?
?
?
?
?
case 1
case 2
case 1 =
?
case 2 =
?
answer = max(rob(0..3), rob(1..4))
2
0
7
1
9
2
3
3
1
4
2
7
?
?
?
?
?
?
case 1
case 2
case 1 =
...
case 2 =
?
dp[0]
=
2
dp[1] = max(
2, 7
) =
7
skip
+9
2
0
7
1
9
2
3
3
1
4
2
7
?
?
?
?
?
?
case 1
case 2
case 1 =
...
case 2 =
?
i
rob
=
2 + 9
=
11
not_rob
=
7
skip
+3
2
0
7
1
9
2
3
3
1
4
2
7
11
?
?
?
?
?
case 1
case 2
case 1 =
...
case 2 =
?
i
rob
=
7 + 3
=
10
not_rob
=
11
skip
+3
2
0
7
1
9
2
3
3
1
4
2
7
11
11
?
?
?
?
case 1
case 2
case 1 =
...
case 2 =
?
i
dp[3]
= max(
10
,
11
) =
11
2
0
7
1
9
2
3
3
1
4
2
7
11
11
7
9
?
?
case 1
case 2
case 1 =
11
case 2 =
...
dp[0]
=
7
dp[1] = max(
7, 9
) =
9
skip
+3
2
0
7
1
9
2
3
3
1
4
2
7
11
11
7
9
?
?
case 1
case 2
case 1 =
11
case 2 =
...
i
rob
=
7 + 3
=
10
not_rob
=
9
skip
+1
2
0
7
1
9
2
3
3
1
4
2
7
11
11
7
9
10
?
case 1
case 2
case 1 =
11
case 2 =
...
i
rob
=
9 + 1
=
10
not_rob
=
10
skip
+1
2
0
7
1
9
2
3
3
1
4
2
7
11
11
7
9
10
10
case 1
case 2
case 1 =
11
case 2 =
...
i
dp[3]
= max(
10
,
10
) =
10
2
+2
0
7
1
9
+9
2
3
3
1
4
2
7
11
11
7
9
10
10
case 1
case 2
case 1 =
11
case 2 =
10
Max loot = max(
11
,
10
) =
11
algo
master
.
io
Step:
Start: 5 houses form a circle, so house 0 and house 4 are adjacent
0 / 14
Input
Example 1
Example 2
Simple
Five houses
Single house
Custom
nums
=
[2, 7, 9, 3, 1]
0 / 14
algo
master
.
io
Step:
Start: 5 houses form a circle, so house 0 and house 4 are adjacent