动态规划dp.比较简单就贴个代码仅供参考了
class Solution {
public:
int rob(vector<int>& nums) {
int n = nums.size();
if(n == 0)
return 0;
else if(n == 1)
{
return nums[0];
}
else if(n == 2)
{
return nums[0]> nums[1] ? nums[0]:nums[1];
}
int dp[n];
dp[0] = nums[0];
dp[1] = nums[1];
dp[2] = nums[0] + nums[2];
for(int i= 3; i< n ; i++)
{
if(dp[i-2] < dp[i-3])
{
dp[i] = dp[i-3] + nums[i];
}
else
{
dp[i] = dp[i-2] + nums[i];
}
}
return dp[n-1] > dp[n-2]?dp[n-1]:dp[n-2];
}
};
博客提及动态规划dp,称其比较简单,并贴出代码供参考,聚焦于信息技术领域的动态规划相关内容。
358

被折叠的 条评论
为什么被折叠?



