当前位置: 首页 > news >正文

LeetCode213.House-Robber-II<打家劫舍II>

题目:

 

思路:

在版本一中增加了一个条件 那就是首尾相关联。那么只需要进行两次循环即可。

第一次是循环是偷第一家的 那么循环到n-1 截至 并且保存一个cmp

第二次循环是不偷第一家的 循环到n截至。然后比较cmp 与 dp [n] 的最大值即可。

 

代码是:

//codeclass Solution {
public:int rob(vector<int>& nums) {int n = nums.size()-1;if(n==1) return max(nums[0],nums[1]);if(n==0) return nums[0];int dp[1000]={0};dp[0]=nums[0];dp[1]=max(dp[0],nums[1]);for(int i=2;i<n;i++){dp[i]=max(dp[i-2]+nums[i],dp[i-1]);}int cmp = dp[n-1];dp[0]=0;dp[1]=nums[1];for(int i=2;i<=n;i++){dp[i]=max(dp[i-2]+nums[i],dp[i-1]);}return max(cmp,dp[n]);}
};

http://www.lryc.cn/news/97252.html

相关文章:

  • 订单系统问题汇总
  • springboot热加载spring-boot-devtools:
  • QT学习之旅 - 一个QT的基本项目
  • 大数据课程D2——hadoop的概述
  • 使用nginx和ffmpeg搭建HTTP FLV流媒体服务器(摄像头RTSP视频流->RTMP->http-flv)
  • 揭秘APT团体常用的秘密武器——AsyncRAT
  • Flutter Widget Life Cycle 组件生命周期
  • LeetCode面向运气之Javascript—第2600题-K件物品的最大和-94.68%
  • 数学建模学习(4):TOPSIS 综合评价模型及编程实战
  • PHP之Smarty使用以及框架display和assign原理
  • 《TCP IP网络编程》第十一章
  • Folx Pro 5 最好用的Mac磁力链接BT种子下载工具
  • Redis 数据库的高可用
  • elementPlus dialog组件设置可拖动,当内容高度大于视口高度拖动显示异常的解决办法
  • 亲测解决Git inflate: data stream error (incorrect data check)
  • Ansible 自动化运维工具
  • node.js 爬虫图片下载
  • VAE-根据李宏毅视频总结的最通俗理解
  • 【LangChain】检索器之上下文压缩
  • uniapp 语音文本播报功能
  • 腾讯云高IO型云服务器CPU型号处理器主频性能
  • 【数据结构】实验八:树
  • kafka消费者api和分区分配和offset消费
  • 【驱动开发day4作业】
  • Ubuntu 20.04 Ubuntu18.04安装录屏软件Kazam
  • ADC 的初识
  • MMdetection框架速成系列 第07部分:数据增强的N种方法
  • 基于Kitti数据集的智能驾驶目标检测系统(PyTorch+Pyside6+YOLOv5模型)
  • 4.4. 深拷贝 vs 浅拷贝
  • 网络安全(黑客)自学建议笔记