Skip to content

Commit 135741a

Browse files
authored
Update Solution.go
1 parent a439fed commit 135741a

File tree

1 file changed

+15
-6
lines changed

1 file changed

+15
-6
lines changed
Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,18 @@
11
func rob(nums []int) int {
22
n := len(nums)
3-
f := make([]int, n+1)
4-
f[1] = nums[0]
5-
for i := 2; i <= n; i++ {
6-
f[i] = max(f[i-1], f[i-2]+nums[i-1])
3+
f := make([]int, n)
4+
for i := range f {
5+
f[i] = -1
76
}
8-
return f[n]
9-
}
7+
var dfs func(int) int
8+
dfs = func(i int) int {
9+
if i >= n {
10+
return 0
11+
}
12+
if f[i] < 0 {
13+
f[i] = max(nums[i]+dfs(i+2), dfs(i+1))
14+
}
15+
return f[i]
16+
}
17+
return dfs(0)
18+
}

0 commit comments

Comments
 (0)