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)