forked from xiaoyu2er/leetcode-js
-
Notifications
You must be signed in to change notification settings - Fork 0
/
198-House-Robber.js
29 lines (26 loc) · 981 Bytes
/
198-House-Robber.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/**
* https://leetcode.com/problems/house-robber/description/
* Difficulty:Easy
*
* You are a professional robber planning to rob houses along a street.
* Each house has a certain amount of money stashed,
* the only constraint stopping you from robbing each of them is that adjacent houses have security system connected
* and it will automatically contact the police if two adjacent houses were broken into on the same night.
Given a list of non-negative integers representing the amount of money of each house,
determine the maximum amount of money you can rob tonight without alerting the police.
*/
/**
* @param {number[]} nums
* @return {number}
*/
var rob = function (nums) {
if (!nums.length) return 0;
var dp = [0, nums[0]];
var max = nums[0];
for (var i = 1; i < nums.length; i++) {
dp[i + 1] = Math.max(dp[i], dp[i - 1] + nums[i]);
max = Math.max(dp[i + 1], max);
}
return max;
};
console.log(rob([5, 2, 3, 5, 8]));