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

动态规划-740.删除并获取节点-力扣(LeetCode)

一、题目解析

根据这个示例1,选择删除4并获得4,那么3和5都会被删除掉且不会被获取,选择删除2并获得2,那么1和3都会被删除且不会获得,这样一看或许对这道题感觉无从下手,但我换一种表达形式你能看出些名堂来。我们将示例1重新按升序排好序,得到2,3,4,这时在一看之前的规则,是不是可以将其转化为不能取相邻的数据,这和我们的打家劫舍问题是不是相同的?我们通过对条件的理解将一道全新的题转化为我们熟悉的题。对于打家劫舍不熟悉的读者可以先移步观看我之前的博客,链接: 动态规划-LCR 089.打家劫舍-力扣(LeetCode)-CSDN博客

 二、算法原理

预处理:根据打家劫舍我们需要现将数据处理一下,先对原数组进行sort升序重新排列,然后用一个新的数组通过下标绝对映射,统计原数组中对应元素的总和,用于打家劫舍问题实现。

这里简单讲解一下,详情可以移步另一篇博客动态规划-LCR 089.打家劫舍-力扣(LeetCode)-CSDN博客

1.状态表示

f[i]表示:选到i位置时,i位置的值必选,此时获得的最大点数

g[i]表示:选到i位置时,i位置的值不选,此时获得的最大点数

2.状态转移方程

f[i]=g[i-1]+arr[i](这里的arr数组是统计重排序数组对应元素总和的数组)

g[i]=max(f[i-1],g[i-1])

3.初始化

f[0]=arr[0],g[0]=0

4.填报顺序

从左向右,两个表一起填

5.返回值

max(f[n-1],g[n-1])(这里的n是原数组的大小)

思考和实践都是不可或缺的,在思考后去实现,740. 删除并获得点数 - 力扣(LeetCode)

三、代码示例

class Solution {
public:int rob(vector<int>& arr) {int n = arr.size();vector<int> f(n),g(n,0);f[0] = arr[0];for(int i = 1;i<n;i++){f[i] = g[i-1]+arr[i];g[i] = max(f[i-1],g[i-1]);}return max(f[n-1],g[n-1]);}int deleteAndEarn(vector<int>& nums) {sort(nums.begin(),nums.end());int n = nums[nums.size()-1];vector<int> arr(n+1);for(int i = 0;i<nums.size();i++){arr[nums[i]] += nums[i];}return rob(arr);}
};

 

 

看到最后,如果对您有所帮助还请点赞、收藏、关注,点点关注不迷路,我们下期再见!

相关文章:

  • Trae+12306 MCP,10分钟搭建行程可视化助手
  • MDK的编译过程及文件类型全解
  • 同一无线网络下的设备IP地址是否相同?
  • FFTW图像处理入门
  • Jenkins 2.426.2配置“构建历史的显示名称,加上包名等信息“
  • 多路径传输(比如 MPTCP)控制实时突发
  • 通过上传使大模型读取并分析文件实战
  • FPGA高效验证工具Solidify 8.0:全面重构图形用户界面
  • 安全运营与威胁对抗体系
  • SmartSoftHelp 之 SQL Server 数据库安全备份与安全还原详解---深度优化版:SmartSoftHelp DeepCore XSuite
  • AtCoder Beginner Contest 406(ABCD)
  • 《Python语言程序设计》第4章第7题,这次利用之前学过的第7章的内容使用对象和类,来修改这道题
  • 跟Gemini学做PPT:字号选择
  • 智能交易革命:基于Python构建全自动加密货币交易系统(CCXT/TensorTrade实战指南)
  • CyberStrikeLab-Lab9-WriteUp
  • AI 数据采集实战指南:基于 Bright Data 快速获取招标讯息
  • C++高频面试考点 -- 智能指针
  • Android Studio历史版本下载方法
  • 2025年电工杯A题第一版本Q1-Q4详细思路求解+代码运行
  • 【Python 算法零基础 4.排序 ⑤ 归并排序】
  • 网站算信息化建设/企业网站搜索优化网络推广
  • 哪些网站做的比较好看/苏州新闻今天最新消息新闻事件
  • 做网站要不要花钱做店长/长春seo招聘
  • 怎么让百度收录你的网站/河南网站推广优化排名
  • 个人网站开发工具/域名服务器ip地址查询
  • 网页设计学生作业步骤/seo实战密码第三版