Skip to content

Commit 5dcc0f7

Browse files
committed
solve: house robber
1 parent 76fb734 commit 5dcc0f7

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

โ€Žhouse-robber/wogha95.js

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
/**
2+
* dp[n] = n์œ„์น˜์˜ ์ง‘์„ ํ›”์นœ๋‹ค๋Š” ๊ฐ€์ •ํ•˜์— n์œ„์น˜์˜ ์ง‘๊นŒ์ง€ ์ตœ๋Œ€๋กœ ํ›”์นœ ๊ธˆ์•ก
3+
* dp[n] = Math.max(dp[n - 3], dp[n - 2]) + nums[index]
4+
*
5+
* TC: O(N)
6+
* SC: O(1)
7+
*/
8+
9+
/**
10+
* @param {number[]} nums
11+
* @return {number}
12+
*/
13+
var rob = function (nums) {
14+
if (nums.length < 3) {
15+
return Math.max(...nums);
16+
}
17+
18+
let prevprevprev = nums[0];
19+
let prevprev = nums[1];
20+
let prev = nums[0] + nums[2];
21+
22+
for (let index = 3; index < nums.length; index++) {
23+
const current = Math.max(prevprevprev, prevprev) + nums[index];
24+
25+
prevprevprev = prevprev;
26+
prevprev = prev;
27+
prev = current;
28+
}
29+
30+
return Math.max(prevprevprev, prevprev, prev);
31+
};

0 commit comments

Comments
ย (0)