Skip to content

Commit f5ef578

Browse files
committed
Add house-robber solution
1 parent 92dd605 commit f5ef578

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

โ€Žhouse-robber/Jeehay28.js

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
/**
2+
* @param {number[]} nums
3+
* @return {number}
4+
*/
5+
6+
// Bottom-Up DP (with constant space) ๋ฐฉ์‹
7+
8+
// ์‹œ๊ฐ„ ๋ณต์žก๋„ (Time Complexity)
9+
// O(n) โ€” ์ž…๋ ฅ ๋ฐฐ์—ด์˜ ํฌ๊ธฐ์— ๋น„๋ก€ํ•˜์—ฌ ์ˆ˜ํ–‰ ์‹œ๊ฐ„์ด ์ฆ๊ฐ€
10+
11+
// ๊ณต๊ฐ„ ๋ณต์žก๋„ (Space Complexity)
12+
// O(1) โ€” ์ž…๋ ฅ ํฌ๊ธฐ์— ๊ด€๊ณ„์—†์ด ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์ด ์ผ์ •
13+
14+
15+
var rob = function (nums) {
16+
17+
if (nums.length === 1) {
18+
return nums[0];
19+
}
20+
21+
let robbed_2 = nums[0];
22+
let robbed_1 = Math.max(nums[0], nums[1]);
23+
24+
for (let i = 2; i < nums.length; i++) {
25+
26+
const temp = robbed_1;
27+
28+
robbed_1 = Math.max(robbed_1, robbed_2 + nums[i]);
29+
30+
robbed_2 = temp;
31+
32+
}
33+
34+
return robbed_1;
35+
36+
};

0 commit comments

Comments
ย (0)