每日一题(力扣198):打家劫舍--dp

考虑到达第n家房屋时,偷偷这家的钱 :1 如果不偷,那么当前最大值是前n-1家房屋中可以偷的最多的钱 2 如果偷 ,那就是这家的钱 +前n-2家房屋可以偷的最多的钱。(从数组的结果值考虑,不然容易绕进去)。

cpp 复制代码
class Solution {
    public:
    int rob(vector<int>& nums) {
        int n=nums.size();
        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-2]+nums[i],dp[i-1]);
        }
        int res=max(dp[n-1],dp[n-2]);
        return res;
    }
};
相关推荐
乐观勇敢坚强的老彭36 分钟前
C++ 竞赛常用算法模板速查表
开发语言·c++·算法
高洁0141 分钟前
工信部教考中心证书
人工智能·深度学习·算法·机器学习·知识图谱
我变成萤火虫1 小时前
河南萌新联赛2026第(三)场:郑州轻工业大学
数据结构·c++·算法·贪心算法·stl·深度优先·哈希算法
Dr.kangder1 小时前
嵌入式面试总结(十九)——内存泄露
单片机·算法·面试·职场和发展·架构·硬件架构
Herbert_hwt1 小时前
【C语言基础】常量、选择结构与运算符全解析
c语言·开发语言·算法
Suxing92 小时前
C语言基础分享:从“租房”到“拆迁”,C语言动态内存管理
java·数据结构·算法
LuminousCPP2 小时前
单链表专题(四)-刷题复盘篇-LeetCode 138 随机链表复制|原地拷贝法突破复杂指针操作
数据结构·笔记·算法·leetcode·链表
逆境不可逃3 小时前
【LeetCode 912】排序数组——随机化快速排序详解
数据结构·算法·排序算法
Coder-magician3 小时前
《代码随想录》刷题打卡day31:动态规划-背包问题part02
算法·动态规划
薛定e的猫咪3 小时前
从因果视角解决多智能体协作:细读 SCIC 算法
算法