【LeetCode热题100】【动态规划】打家劫舍

题目链接:198. 打家劫舍 - 力扣(LeetCode)

如果没有房子,那就是0,如果有一间房子,那么就是这间房子,如果有两间,那么就挑一间打劫

如果有多间,对于第i间来说,让dpi是打劫的最大金额,如果要打劫第i间,那么第i-1间就不能打劫,dpi=numsi-1+dpi-2,如果不打劫第i间,那么dpi=dpi-1,取这两个的最大值

注意nums下标从0开始

复制代码
class Solution {
public:
    int rob(vector<int> &nums) {
        vector<int> dp(nums.size() + 1);
        dp[1] = nums[0];
        for (int i = 2; i <= nums.size(); ++i)
            dp[i] = max(dp[i - 1], nums[i - 1] + dp[i - 2]);
        return dp[nums.size()];
    }
};
相关推荐
天疆说12 小时前
策略的进化:从随心所欲到稳健前行
算法
冻柠檬飞冰走茶12 小时前
《数据结构实验指导-C++语言版》 在顺序表 list 中查找元素 x
开发语言·数据结构·c++·算法·list
happyprince13 小时前
03-深刻观-CodeX哲学与升华(源码)
算法·ai编程
不会打球的王子13 小时前
Day 27:迁移学习与微调 — 站在巨人的肩膀上
算法
数模竞赛Paid answer14 小时前
2025年中青杯数学建模A题康养城市建设求解全过程论文及程序
算法·数学建模·数据分析·中青杯
网安蟹佬霸14 小时前
密码学安全实战:从加密原理到哈希破解的完整攻防指南
网络·算法·安全·web安全·开源·密码学·哈希算法
yangmu320314 小时前
深度解析:短视频是如何通过“算法+神经机制”劫持用户时间的?
算法
LuminousCPP14 小时前
栈和队列专题(四):LeetCode 232. 用栈实现队列|双栈分工 + 按需迁移 + 摊还 O(1)
c语言·数据结构·笔记·算法·leetcode
tudousisi22215 小时前
01背包8.21
数据结构·算法
ZJU_统一阿萨姆15 小时前
【算子开发】Reduction算子完全指南
人工智能·算法·语言模型