198 House Robber
来源:互联网 发布:c语言百分d是什么意思 编辑:程序博客网 时间:2024/06/16 20:52
题意:给定非负数的一维数组,从中选出不相邻的一组数,使这组数之和最大。
分析:动态规划,设dp[i]表示nums[0,i]所选数组的最大和,状态转移方程为
dp[i]=max(dp[i-1],dp[i-2]+nums[i]);
代码:
class Solution {public: int rob(vector<int>& nums) { int n=nums.size(); if(n==0) return 0; if(n==1) return nums[0]; vector<int> dp(n,0); dp[0]=nums[0]; dp[1]=max(nums[0],nums[1]); for(int i=2;i<n;++i) dp[i]=max(dp[i-1],dp[i-2]+nums[i]); return dp[n-1]; }};
0 0
- Leetcode 198: House Robber
- 198House Robber
- leetcode-198 House Robber
- [LeetCode 198]House Robber
- 198 House Robber
- House Robber - LeetCode 198
- leetcode 198 House Robber
- 198 House Robber
- leetCode #198 House Robber
- LeetCode 198-House Robber
- Leetcode[198]-House Robber
- 【Leetcode】House Robber #198
- Leetcode 198 House Robber
- leetcode 198:House Robber
- House Robber (leetcode 198)
- 【LeetCode】198:House Robber
- leetcode[198]:House Robber
- leetcode-198-House Robber
- 6与6pluse的图片处理问题
- 学到了系列
- 深度学习之Caffe初步学习
- 面试---c和c++的区别
- 关于sqlserver服务和代理服务启动不了
- 198 House Robber
- Scala教程(八)文件操作
- 汇编指令系统及其在单片机系统中的应用总结
- nand flash 大页小页
- Apple 官方验证 Xcode 的指南读后记录
- 1007. Red-black Tree (35)
- __weak 修饰符
- 初识servlet
- 阿里云ECS每天一件事D2:配置防火墙