题目链接
LeetCode 198. 打家劫舍[1]
题目描述
题面描述略有改动,不影响题意。
你是一个专业的小偷,计划偷窃沿路的电瓶车电瓶。每个电瓶价值不一样,影响你偷窃的唯一制约因素就是相邻的电瓶车装有相互连通的防盗系统,如果两辆相邻的电瓶车的电瓶同时被偷,系统会自动报警。
给定一个代表每辆电瓶车电瓶价值的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。
示例1
输入:[1,2,3,1]输出:4
示例2
输入:[2,7,9,3,1]输出:12
题解
代码
c++
classSolution { public: introb(vector<int>&nums) { intn=nums.size(); intprepre=0, pre=0, now=0; for (inti=0; i<n; ++i) { now=max(pre, prepre+nums[i]); prepre=pre; pre=now; } returnnow; } };
参考资料
[1]
LeetCode 198. 打家劫舍: https://leetcode-cn.com/problems/house-robber/
作者简介:godweiyang,知乎同名,华东师范大学计算机系硕士在读,方向自然语言处理与深度学习。喜欢与人分享技术与知识,期待与你的进一步交流~

