We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 012f013 commit 6098300Copy full SHA for 6098300
house-robber-ii/yyyyyyyyyKim.py
@@ -0,0 +1,25 @@
1
+class Solution:
2
+ def rob(self, nums: List[int]) -> int:
3
+
4
+ # DP
5
+ # 시간복잡도 O(n^2), 공간복잡도 O(n)
6
7
+ # 집이 1개~3개인 경우, 가장 큰 집만 털기
8
+ if len(nums) <= 3:
9
+ return max(nums)
10
11
+ # 첫 번째 집을 포함하지 않고 털기
12
+ dp1 = [0]*len(nums)
13
+ dp1[1] = nums[1]
14
+ dp1[2] = nums[2]
15
+ for i in range(2, len(nums)):
16
+ dp1[i] = max(dp1[i-1], max(dp1[:i-1])+nums[i])
17
18
+ # 마지막 집을 포함하지 않고 털기
19
+ dp2 = [0]*len(nums)
20
+ dp2[0] = nums[0]
21
+ dp2[1] = nums[1]
22
+ for i in range(2, len(nums)-1):
23
+ dp2[i] = max(dp2[i-1], max(dp2[:i-1])+nums[i])
24
25
+ return max(max(dp1), max(dp2))
0 commit comments