[LeedCode OJ]#198 House Robber
2015-08-24 15:03
302 查看
【 声明:版权所有,转载请标明出处,请勿用于商业用途。 联系信箱:libin493073668@sina.com】
题目链接:https://leetcode.com/problems/house-robber/
题意:
一条街程直线排列,街道上有一些房子,一个小偷去偷东西,每个房子里面都有一个价值,要求小偷在不偷相邻的房子的情况下,能得到的最大价值是多少
思路:
dp[i][j]代表小偷对于第i个房子采取的行动,j=0代表不偷,j=1代表偷
那么就能得到状态转移方程:
dp[i][0] = max(dp[i-1][0],dp[i-1][1]);
dp[i][1] = dp[i-1][0]+nums[i];
题目链接:https://leetcode.com/problems/house-robber/
题意:
一条街程直线排列,街道上有一些房子,一个小偷去偷东西,每个房子里面都有一个价值,要求小偷在不偷相邻的房子的情况下,能得到的最大价值是多少
思路:
dp[i][j]代表小偷对于第i个房子采取的行动,j=0代表不偷,j=1代表偷
那么就能得到状态转移方程:
dp[i][0] = max(dp[i-1][0],dp[i-1][1]);
dp[i][1] = dp[i-1][0]+nums[i];
class Solution { public: int rob(vector<int>& nums) { int len = nums.size(); int (*dp)[2] = new int[len+1][2]; int i,j; if(len) { dp[0][0] = 0; dp[0][1] = nums[0]; for(i = 1; i<len; i++) { dp[i][0] = max(dp[i-1][0],dp[i-1][1]); dp[i][1] = dp[i-1][0]+nums[i]; } return max(dp[len-1][0],dp[len-1][1]); } return 0; } };
相关文章推荐
- iOS 8 系统自带BlurEffect 毛玻璃特效
- 如何将Mac OS X10.10.3下的Python2.7.6升级到最新的Python3.4
- Wireshark软件---安装和简单使用
- String 为什么是final
- PAT (Basic Level) Practise:1032. 挖掘机技术哪家强
- join()之让线程按顺序执行
- 离屏Canvas——制作水印图片
- mysql在linux及windows上安装及远程连接
- NBUT 1223 Friends number
- 如何在mac上安装virtualBox(虚拟机)
- Android 网络--我是怎么做的: Volley+OkHttp+Https
- 利用模板导出文件(二)之jacob利用word模板导出word文件(Java2word)
- Android倒计时的实现代码
- java代码实现如jsp页面的form请求方式二HttpClient
- POJ1700 Crossing River
- selector-item属性
- 定位高cpu使用率
- 家装应该怎么刷涂料
- 又见GCD(http://acm.hdu.edu.cn/showproblem.php?pid=2504)
- 堆排序1.0