Skip to content

Commit 5879dfd

Browse files
committed
feat: Upload house-router solution (typescript)
1 parent 29e30d2 commit 5879dfd

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

โ€Žhouse-robber/mike2ox.tsโ€Ž

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/**
2+
* Source: https://leetcode.com/problems/house-robber/
3+
* ํ’€์ด๋ฐฉ๋ฒ•: DP๋ฅผ ์ด์šฉํ•˜์—ฌ ์ง‘์„ ํ„ธ ๋•Œ ์ตœ๋Œ€๊ฐ’์„ ๊ตฌํ•จ
4+
* ์‹œ๊ฐ„๋ณต์žก๋„: O(n)
5+
* ๊ณต๊ฐ„๋ณต์žก๋„: O(n)
6+
*
7+
* ์ƒ๊ฐ๋‚˜๋Š” ํ’€์ด๋ฐฉ๋ฒ•
8+
*/
9+
function rob(nums: number[]): number {
10+
if (nums.length === 0) return 0;
11+
if (nums.length === 1) return nums[0];
12+
if (nums.length === 2) return Math.max(nums[0], nums[1]);
13+
14+
const dp: number[] = new Array(nums.length);
15+
16+
dp[0] = nums[0];
17+
dp[1] = Math.max(nums[0], nums[1]);
18+
19+
// ๋‚จ์€ ์ง‘์„ ์ˆœํšŒํ•˜๋ฉด์„œ ์ตœ๋Œ€๊ฐ’์„ ๊ตฌํ•จ
20+
for (let i = 2; i < nums.length; i++)
21+
dp[i] = Math.max(dp[i - 1], dp[i - 2] + nums[i]);
22+
23+
return dp[nums.length - 1];
24+
}

0 commit comments

Comments
ย (0)