华为OD机试 - 连续天数的最高利润额 - 动态规划(Java 2024 C卷 100分)

一、题目描述

公司每日盈利的利润额记于整数数组 profit,请返回连续一或多天利润额总和的最高值。

二、输入描述

第一行为一个整数,表示天数

第二行为整数列表,分别为每日的利润。

三、输出描述

输出整数,表示连续天数利润额总和的最高值。

1、输入

4
2 3 -5 4

2、输出

5

3、说明

"2 3”连续2天的利润总额总和为最高值,连续利润额为5。

四、解题思路

这道题的目的是在给定的利润数组中,找到连续子数组的最大和,要解决这个问题,我们可以采用动态规划的思想。

最大连续子数组和问题可以被分解为若干子问题。具体来说,求解以第 i 个元素结尾的最大子数组和,依赖于求解以第 i-1 个元素结尾的最大子数组和。

这种重叠子问题的性质使得动态规划成为一种非常合适的解题方法,因为动态规划能够通过记住(缓存)子问题的结果来避免重复计算。

  1. 读取输入的天数和每日的利润数组。
  2. 初始化 maxEndingHere 和 maxSoFar 为利润数组的第一个元素。
  3. 通过迭代数组,从第二个元素开始,逐步更新 maxEndingHere 和 maxSoFar。
  4. 最终,maxSoFar 即为最大连
华为OD机试 - 最大利润(Java) 我们假设商品1的第 i 天的价格为 price1[i],那么只要price1[i] < price1[i+1],则说明当前处于上升区段的低价位,因此可以all in,然后到i+1天的时候all out。我们只要找到商品价格走势的上升区段,然后低价all in买入,高价all out卖出即可求得最大利润。第三行输入仓库限制每件商品的最大持有数量是item[index],比如4 5 6。第一行输入商品的数量number,比如3。第一件商品每天的价格,比如1 2 3。第三件商品每天的价格,比如1 5 3。 阅读详情

相关推荐

华为OD机试 - 最大利润(Python)

第三行输入仓库限制每件商品的最大持有数量是item[index],比如4 5 6。每种商品的价格是item-price[item_index][day]由于仓库限制每件商品的最大持有数量是item[index]请给出商人在days天内能获取的最大的利润。商人经营一家店铺,有number种商品,第一行输入商品的数量number,比如3。第二行输入商品售货天数 days,比如3。第一件商品每天的价格,比如1 2 3。第二件商品每天的价格,比如4 3 2。第三件商品每天的价格,比如1 5 3。

m0_46181452的博客 1131

【华为OD机试真题】A卷-最大利润(Python)

【华为OD机试真题】A卷-最大利润(Python):商人经营一家店铺,有number 种商品, 由于仓库限制每件商品的最大持有数量是 item[index]每种商品的价格是 item-price[item_index][day]通过对商品的买进和卖出获取利润 请给出商人在 days 天内能获取的最大的利润注:同一件商品可以反复买进和卖出。

u014481728的博客 536

【华为OD机试真题 Python语言】115、最大利润 | 机试真题+思路参考+代码解析

商人经营一家店铺, 有number种商品,由于仓库限制每件商品的最大持有数量是item[index],每种商品的价格是item-price[item _index][day],文章对你有所帮助的话,欢迎给个赞或者 star,你的支持是对作者最大的鼓励,不足之处可以在评论区多多指正,交流学习。第三行输入仓库限制每件商品的最大持有数量是item[index],比如4 5 6。通过对商品的买进和卖出获取利润,请给出商人在days天内能获取的最大的利润。输入第一行输入商品的数量number,比如3。

KJ.JK 5150

华为OD机试 新系统 双机位C卷 往年真题 机考题库(持续收录中)以及算法考点详解(Python/JS/C/C++)

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释发现新题目,随时更新。

学Java,找哪吒 5万+

【2024华为OD机试C卷】437、贪心歌手 | 机试真题+思路参考+代码解析(C语言、C++、Java、Py、JS)

题目描述 >歌手准备从A城去B城参加演出 >  >有如下规则: >  1、按照合同,他必须在T天内赶到   2、歌手途径N座城市   3、歌手不能往回走   4、每两座城市之间需要的天数都可以提前获知   5、歌手在每座城市都可以在路边卖唱赚钱,经过调研,歌手提前获知了每座城市卖唱的收入预期,如果在一座城市第一 天卖唱可以赚M,后续每天的收入会减少D (第二天赚的钱是M-D,第三天是M-2D...);如果收入减到0就不会再少了   6、歌

KJ.JK 1万+

华为OD机试C卷-- 贪心歌手(Java & JS & Python & C)

一个歌手准备从A城去B城参加演出。 按照合同,他必须在 T 天内赶到 歌手途经 N 座城市 歌手不能往回走 每两座城市之间需要的天数都可以提前获知。 歌手在每座城市都可以在路边卖唱赚钱。 经过调研,歌手提前获知了每座城市卖唱的收入预期: 如果在一座城市第一天卖唱可以赚M,后续每天的收入会减少D(第二天赚的钱是 M - D,第三天是 M - 2D ...)。如果收入减少到 0 就不会再少了。 歌手到达后的第二天才能开始卖唱。如果今天卖过唱,第二天才能出发。 贪心的歌手最多可以赚多少钱?

wbajsjhhhhh的博客 5736

用RK3588 NPU加速人脸识别:从本地测试到服务器部署的完整流程(含ONNX模型)

本文详细介绍了如何利用RK3588 NPU加速人脸识别系统,从模型优化到高并发服务部署的全流程。通过RetinaFace和FaceNet模型的协同推理,结合ONNX模型转换和NPU特有优化技巧,显著提升识别效率。文章还涵盖了gRPC通信架构设计、性能压测及实际部署经验,为开发者提供了一套完整的解决方案。

weixin_29058331的博客 464

Chromatix 7实战:从零开始调优ISP模块的完整流程(附常见报错解决方案)

本文提供了高通平台Camera调试工具Chromatix 7的完整实战指南。详细阐述了从环境准备、项目初始化、基础校正(如LSC、BPC)到核心ISP管线(Demosaic、CCM、HDR)及后处理(CAC、ANR)的调优全流程,并附带了常见报错(如“未初始化实例”)的解决方案,旨在帮助工程师建立系统性的调试方法论。

weixin_29290863的博客 622

Rider高效调试UE引擎:无需编译源码的符号配置指南

本文提供了一份详尽的Rider高效调试UE引擎指南,核心在于无需编译源码即可配置调试符号。通过Epic启动器下载官方PDB文件,并在Rider中正确配置外部符号服务器路径,开发者能在10分钟内实现对引擎内部代码(如AActor::Tick)的源码级断点调试、变量查看和调用堆栈分析,极大提升问题排查效率。

weixin_29011239的博客 340

Burp Suite手工验证CORS漏洞的四步闭环法

CORS(跨域资源共享)是Web应用实现跨域通信的基础机制,其安全本质在于服务端对Origin头的校验逻辑与响应头组合的语义一致性。当服务端错误地返回Access-Control-Allow-Origin: *并配合Access-Control-Allow-Credentials: true,或采用弱校验(如字符串包含匹配)时,将导致敏感数据泄露与凭据劫持风险。该漏洞难以被自动化扫描器发现,因其依赖请求上下文、认证状态及动态策略判断。Burp Suite作为核心工具,需通过构造跨域请求、捕获预检响应、交叉验

weixin_30596343的博客 512

你不必懂AI,但必须会用AI:写给所有焦虑中的职场人

AI时代不必焦虑学技术,关键在于用AI解决实际问题。文章指出,99%的人只需成为AI使用者而非建造者,核心竞争力在于结合业务痛点运用AI工具提升效率。与其盲目学习工具,不如梳理工作流程,识别可优化环节,让AI赋能重复性、标准化任务。行业经验与AI工具的结合才是真正的职场护城河。建议从具体工作场景出发,寻找匹配的AI解决方案,迈出应用第一步。

hundred98的博客 716

QT+Opencv实现视频流播放

1.流程 首先通过opencv打开视频流,获取到数据帧,然后将数据帧转换为QT可识别的图像,显示到QT界面上。 2.opencv解码线程源码 //DecodeOpencv.h #pragma once #include <QThread> #include <QObject> #include "opencv2/core/core.hpp" #include "opencv2/highgui/highgui.hpp" #include "opencv2/img..

希望能帮助大家,希望大家多多支持,你们的支持是我前进的动力。 6459

5、流体-结构相互作用耦合技术详解

本文详细解析了流体-结构相互作用(FSI)的两种核心耦合技术:松散耦合和紧密耦合。通过原理阐述、优缺点分析及实际应用案例,对比了两种方法的适用场景与性能差异,并进一步探讨了高级耦合技术的发展趋势和工程实践方向,为相关领域的研究人员和工程师提供了全面的技术参考。

fanta的博客 205

Android 12.0 SystemUI下拉状态栏定制化之隐藏下拉通知栏布局功能实现(二)

在12.0的系统定制化开发中,由于从12.0开始SystemUI下拉状态栏和11.0的变化比较大,所以可以说需要从新分析相关的SystemUI的 布局,然后做分析来实现不同的功能,今天就开始实现关于隐藏SystemUI下拉状态栏中的通知栏布局系列二,去掉下拉状态栏中 通知栏部分 白色的圆角背景

安卓兼职framework和app工程师的博客 1634

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

上一篇: 华为OD机试(A卷 + B卷 + C卷)按算法考点分类
下一篇: mybatis foreach数组,foreach嵌套,批量插数据,事务问题?内存不足怎么办?
哪 吒
哪 吒 2022年度博客之星TOP 1 2022年度博客之星TOP 1 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄9年 59万+粉丝 2953原创
评论 14
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哪 吒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值