leetcode

Solution to some Leetcode problems written in C++
git clone git://git.dimitrijedobrota.com/leetcode.git
Log | Files | Refs | README | LICENSE

0213.cpp (560B)


0 class Solution {
1 public:
2 // see 198. House Robber
3 int rob_single(vector<int> &nums, int start, int end) {
4 if (end - start <= 0) return 0;
5 int prev1 = 0, prev2 = 0;
6 for (int i = start; i < end; i++) {
7 int tmp = prev1;
8 prev1 = max(prev2 + nums[i], prev1);
9 prev2 = tmp;
10 }
11 return prev1;
12 }
14 int rob(vector<int> &nums) {
15 if (nums.size() == 0) return 0;
16 return max(nums[0] + rob_single(nums, 2, nums.size() - 1), rob_single(nums, 1, nums.size()));
17 }
18 };