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

力扣(leetcode)每日一题 3259 超级饮料的最大强化能量|动态规划

3259. 超级饮料的最大强化能量

题干

来自未来的体育科学家给你两个整数数组 energyDrinkAenergyDrinkB,数组长度都等于 n。这两个数组分别代表 A、B 两种不同能量饮料每小时所能提供的强化能量。

你需要每小时饮用一种能量饮料来 最大化 你的总强化能量。然而,如果从一种能量饮料切换到另一种,你需要等待一小时来梳理身体的能量体系(在那个小时里你将不会获得任何强化能量)。

返回在接下来的 n 小时内你能获得的 最大 总强化能量。

注意 你可以选择从饮用任意一种能量饮料开始。

示例 1:

**输入:**energyDrinkA = [1,3,1], energyDrinkB = [3,1,1]

**输出:**5

解释:

要想获得 5 点强化能量,需要选择只饮用能量饮料 A(或者只饮用 B)。

题解

当要切换路线的时候,付出的代价是这个格子的饮料无法获取

直接憋动态规划,当前依赖上一个位置

public static long maxEnergyBoost(int[] energyDrinkA, int[] energyDrinkB) {int length = energyDrinkA.length;long[][] dp = new long[length + 1][2];// 0为a分支   1为b分支for (int index = length - 1; index >= 0; index--) {long tmp1 = dp[index + 1][0] + energyDrinkA[index]; // 还是选择a分支long tmp2 = dp[index + 1][1];  // 切换到b分支 当前小时无法获取能量dp[index][0] = Math.max(tmp2, tmp1);long tmp3 = dp[index + 1][1] + energyDrinkB[index];// 还是选择b分支long tmp4 = dp[index + 1][0]; 切换到a分支 当前小时无法获取能量dp[index][1] = Math.max(tmp3, tmp4);}return Math.max(dp[0][0], dp[0][1]);}

进行一下优化,节省内存空间,写法抽象些

    public static long maxEnergyBoost(int[] energyDrinkA, int[] energyDrinkB) {int length = energyDrinkA.length;long aBranch = 0;long bBranch = 0;long tmp;for (int index = length - 1; index >= 0; index--) {tmp = aBranch;aBranch = Math.max(aBranch + energyDrinkA[index], bBranch);bBranch = Math.max(bBranch + energyDrinkB[index], tmp);}return Math.max(aBranch, bBranch);}

总结

常规的动态规划题目

相关文章:

力扣(leetcode)每日一题 3259 超级饮料的最大强化能量|动态规划

3259. 超级饮料的最大强化能量 题干 来自未来的体育科学家给你两个整数数组 energyDrinkA 和 energyDrinkB,数组长度都等于 n。这两个数组分别代表 A、B 两种不同能量饮料每小时所能提供的强化能量。 你需要每小时饮用一种能量饮料来 最大化 你的总强化能量。然而…...

Webserver(2.7)内存映射

目录 内存映射内存映射相关系统调用内存映射的注意事项如果对mmap的返回值(ptr)做操作,释放内存(munmap)是否能够成功?如果open时O_RDONLY,mmap时prot参数指定PROT_READ | PROT_WRITE会怎样?如果文件偏移量…...

vue3父子组件传值,子组件暴漏方法

1.父传子 defineProps 父组件直接通过属性绑定的方式给子组件绑定数据&#xff0c;子组件通过defineProps接收函数接收 其中v-model是完成事件绑定和事件监听的语法糖。v-model算是v-bind和v-on的简洁写法&#xff0c;等价于 <c-input ref"inputRef" :modelValue…...

Linux_04 Linux常用命令——tar

一、命令格式 tar [选项] [归档文件] [要处理的文件或目录]1、选项 c创建归档文件x解压缩归档文件z使用gzipj使用bzip2v处理过程显示信息f指定归档文件名称 2、归档文件-可指定目录及文件名 /home/wang.tar.gz 3、要处理的文件或目录 /home/study1/wang 二、常见命令 t…...

Java项目实战II基于Java+Spring Boot+MySQL的编程训练系统(源码+数据库+文档)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发&#xff0c;CSDN平台Java领域新星创作者&#xff0c;专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末 一、前言 在当今数字…...

Rust:文档注释 //! 和 ///

在 Rust 编程语言中&#xff0c;//! 是一种特殊的文档注释&#xff08;documentation comment&#xff09;。它用于为整个模块、结构体、枚举、函数或其他项提供文档说明。与单行注释 // 和多行注释 /* ... */ 不同&#xff0c;//! 和 ///&#xff08;用于紧跟在项之前的文档注…...

练习LabVIEW第二十七题

学习目标&#xff1a; 刚学了LabVIEW&#xff0c;在网上找了些题&#xff0c;练习一下LabVIEW&#xff0c;有不对不好不足的地方欢迎指正&#xff01; 第二十七题&#xff1a; 创建一个VI程序模拟温度测量。假设传感器输出电压与温度成正比。例如&#xff0c;当温度为70F时&…...

使用React构建现代Web应用

&#x1f496; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4bb; Gitee主页&#xff1a;瑕疵的gitee主页 &#x1f680; 文章专栏&#xff1a;《热点资讯》 使用React构建现代Web应用 1 引言 2 React简介 3 安装React 4 创建React项目 5 设计应用结构 6 创建组件 7 使用组件…...

【系统设计】Merkle 算法在 Git 中的应用:深入理解与实践

引言 在现代软件开发中&#xff0c;Git 已成为版本控制的事实标准。Git 能够快速处理项目的变化&#xff0c;确保代码的完整性&#xff0c;其中一个关键技术就是 Merkle 树。本文将深入探讨 Merkle 算法的原理&#xff0c;以及其在 Git 中的具体应用。 1. Merkle 算法的原理 …...

【umi max】关于umi构建的项目在本地服务运行正常,但是部署时无致命报错却白屏,html文档的#root容器没有子元素的原因及解决办法

我们在部署时运维很可能会因为项目太多&#xff0c;进而放到不同的目录底下&#xff0c;例如project/H5-TEST-DEMO &#xff08;其中project是项目的存放目录&#xff0c;而H5-TEST-DEMO才是我们部署的项目根目录&#xff09;于是乎就会出现我们在本地服务里调试得好好的&#…...

Openlayers高级交互(14/20):汽车移动轨迹动画(开始、暂停、结束)

本示例演示在vue+openlayers中实现轨迹动画,这里设置了小汽车开始,暂停,结束等的控制键,采用了线段步长位置获取坐标来定位点的方式来显示小车的动态。 效果图 专栏名称内容介绍Openlayers基础实战 (72篇)专栏提供73篇文章,为小白群体提供基础知识及示例演示,能解决基…...

蓝牙MCU蓝牙医疗检测相关案例

英尚蓝牙MCU配套成熟的网络协议栈和丰富的示例代码及多平台APP工具。无需二次开发&#xff0c;即连即用&#xff1b;提供特色蓝牙/串口/USB三通芯片&#xff0c;为更多复杂无线应用赋能。相关产品及技术欢迎咨询。 应用案例说明: • 应用包括血糖仪,血氧仪,血压计,体温计,毒品…...

pytorch环境安装和更新,额外装cuda有什么意义

更新了一下设备和环境&#xff0c;看了眼其他教程&#xff0c;突然间发现都还让装cuda和cudnn。。。明明很早之前pytorch使用的和系统的cuda就已经脱钩了。 测试了一下不额外装也没发现什么问题&#xff0c;如果有谁知道装系统的cuda对pytorch有何意义&#xff0c;可以评论区告…...

【观成科技】APT组织常用开源和商业工具加密流量特征分析

概述 在当前的网络安全环境中&#xff0c;APT组织的活动愈发频繁&#xff0c;利用其高级技术和社会工程手段&#xff0c;针对全球范围内的政府、军事和企业目标发起了一系列复杂的网络攻击。在不断升级的攻击中&#xff0c;开源和商业工具凭借其灵活性、易用性和全球化攻击能力…...

Java开发者的Python快速进修指南:面向对象进阶

在上一期中,我们对Python中的对象声明进行了初步介绍。这一期,我们将深入探讨对象继承、组合以及多态这三个核心概念。不过,这里不打算赘述太多理论,因为我们都知道,Python与Java在这些方面的主要区别主要体现在语法上。例如,Python支持多重继承,这意味着一个类可以同时…...

【商汤科技-注册/登录安全分析报告】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞…...

诱骗取电快充协议芯片,支持与其它 MCU 共用 D+D-网络和电脑传输数据

前言 在科技日新月异的今天&#xff0c;快充技术已成为智能手机、平板电脑乃至笔记本电脑等电子设备不可或缺的一部分。各大厂商为了提升用户体验&#xff0c;纷纷推出了自家的快充协议&#xff0c;这些协议不仅让充电速度大幅提升&#xff0c;还带来了更加智能、安全的充电体验…...

Java Executor ScheduledExecutorService 源码

前言 相关系列 《Java & Executor & 目录》《Java & Executor & ScheduledExecutorService & 源码》《Java & Executor & ScheduledExecutorService & 总结》《Java & Executor & ScheduledExecutorService & 问题》 涉及内容 …...

【力扣 + 牛客 | SQL题 | 每日6题】牛客SQL热题 + 力扣hard

1. 牛客SQL热题206&#xff1a;获取每个部门中当前员工薪水最高的相关信息 1.1 题目&#xff1a; 描述 有一个员工表dept_emp简况如下: emp_nodept_nofrom_dateto_date10001d0011986-06-269999-01-0110002d0011996-08-039999-01-0110003d0021996-08-039999-01-01 有一个薪水…...

前端常见错误

搭建vueelement-ui脚手架错误 基于vue官方文档和element官方文档搭建手册报错 安装element Unchecked runtime.lastError: Could not establish connection. Receiving end does not exist. types.js?8ad0:39 Uncaught TypeError: Cannot read property prototype of undefi…...

革新性插件本地化突破:Obsidian-i18n让所有插件无缝切换你的语言

革新性插件本地化突破&#xff1a;Obsidian-i18n让所有插件无缝切换你的语言 【免费下载链接】obsidian-i18n 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-i18n 问题发现&#xff1a;当插件界面成为使用障碍 你是否曾遇到这样的场景&#xff1a;好不容易找…...

2026年Turnitin AI检测对留学生论文的影响:检测标准和应对方案

2026年Turnitin AI检测对留学生论文的影响&#xff1a;检测标准和应对方案 同一篇论文&#xff0c;知网52%&#xff0c;维普38%&#xff0c;万方21%。 为什么差这么多&#xff1f;不是平台乱搞&#xff0c;而是检测算法和判断标准不一样。理解了Turnitin AI检测背后的逻辑&am…...

EasyAnimateV5-7b-zh-InP与Java集成开发实战

EasyAnimateV5-7b-zh-InP与Java集成开发实战 1. 企业级视频生成需求与解决方案 现在很多企业都需要视频内容&#xff0c;电商要商品展示视频&#xff0c;教育机构要教学动画&#xff0c;营销团队要广告视频。传统视频制作成本高、周期长&#xff0c;一个简单的商品视频可能就…...

vLLM部署ERNIE-4.5-0.3B-PT的批处理能力实测:batch_size=8时吞吐提升2.3倍

vLLM部署ERNIE-4.5-0.3B-PT的批处理能力实测&#xff1a;batch_size8时吞吐提升2.3倍 当我们需要同时处理多个用户的文本生成请求时&#xff0c;比如一个在线客服系统或者一个内容创作平台&#xff0c;传统的单条请求处理方式就会显得力不从心。服务器只能一个个排队处理&…...

原神智能辅助工具BetterGI:三维价值框架下的游戏效率提升方案

原神智能辅助工具BetterGI&#xff1a;三维价值框架下的游戏效率提升方案 【免费下载链接】better-genshin-impact &#x1f4e6;BetterGI 更好的原神 - 自动拾取 | 自动剧情 | 全自动钓鱼(AI) | 全自动七圣召唤 | 自动伐木 | 自动刷本 | 自动采集/挖矿/锄地 | 一条龙 | 全连音…...

GEE实战:手把手教你用Sentinel-2数据计算植被覆盖度(附完整代码与避坑指南)

GEE实战&#xff1a;从零到一掌握Sentinel-2植被覆盖度计算全流程 清晨的阳光透过实验室的窗户洒在桌面上&#xff0c;一位生态学研究生正盯着电脑屏幕发愁——导师要求她在一周内完成研究区域的植被覆盖度分析&#xff0c;但GEE平台上那些晦涩的代码和突如其来的报错信息让她手…...

OpenClaw代码助手:Qwen3-14b_int4_awq实现的自动补全与错误检查

OpenClaw代码助手&#xff1a;Qwen3-14b_int4_awq实现的自动补全与错误检查 1. 为什么需要本地化代码助手&#xff1f; 作为一名长期与代码打交道的开发者&#xff0c;我一直在寻找能够提升编程效率的工具。传统的IDE插件虽然能提供基础补全&#xff0c;但存在几个痛点&#…...

Qwen3-14B在Keil5 MDK开发中的奇思妙用:注释生成与调试日志分析

Qwen3-14B在Keil5 MDK开发中的奇思妙用&#xff1a;注释生成与调试日志分析 1. 嵌入式开发的痛点与AI机遇 在STM32项目开发过程中&#xff0c;每个工程师都经历过这样的场景&#xff1a;接手一个遗留项目&#xff0c;面对大段没有注释的汇编代码&#xff1b;或者调试时串口不…...

Qwen3-ASR性能优化:基于CNN的语音特征提取技术

Qwen3-ASR性能优化&#xff1a;基于CNN的语音特征提取技术 语音识别技术发展到今天&#xff0c;已经不再是实验室里的新奇玩具&#xff0c;而是我们日常生活中随处可见的实用工具。从手机语音助手到会议记录软件&#xff0c;从智能家居控制到车载语音交互&#xff0c;语音识别…...

OpenClaw对话式编程:千问3.5-27B生成Python脚本并自动执行

OpenClaw对话式编程&#xff1a;千问3.5-27B生成Python脚本并自动执行 1. 为什么选择OpenClaw做对话式编程&#xff1f; 去年冬天的一个深夜&#xff0c;我盯着屏幕上的Python脚本发呆——这个需要每小时抓取一次数据的自动化任务&#xff0c;已经因为API变更第三次报错了。手…...