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 a8b6f51 commit 2f420b8Copy full SHA for 2f420b8
1 file changed
house-robber-ii/byol-han.js
@@ -0,0 +1,29 @@
1
+/**
2
+ * https://leetcode.com/problems/house-robber-ii/submissions/1686583649/
3
+ * @param {number[]} nums
4
+ * @return {number}
5
+ */
6
+var rob = function (nums) {
7
+ if (nums.length === 1) return nums[0];
8
+
9
+ // Helper to solve the linear house robber problem
10
+ function robLinear(houses) {
11
+ let prev1 = 0; // dp[i-1]
12
+ let prev2 = 0; // dp[i-2]
13
14
+ for (let money of houses) {
15
+ let temp = prev1;
16
+ prev1 = Math.max(prev1, prev2 + money);
17
+ prev2 = temp;
18
+ }
19
20
+ return prev1;
21
22
23
+ // Case 1: Exclude last house
24
+ let money1 = robLinear(nums.slice(0, nums.length - 1));
25
+ // Case 2: Exclude first house
26
+ let money2 = robLinear(nums.slice(1));
27
28
+ return Math.max(money1, money2);
29
+};
0 commit comments