Day50 动态规划 part11
Day50 动态规划 part11
123.买卖股票的最佳时机III
我的思路:
这道题考虑了交易次数 j(最大次数为2),以及某天 i 应该买or卖股票(两种状态)
用三维数组表示
dp[i][j][0] – 第i天结束时,交易j次,手里没有股票
状态方程 dp[i][j][0] = Math.max(dp[i - 1][j][0], dp[i - 1][j][1] + prices[i])
dp[i][j][1] – 第i天结束时,交易j次,手里有股票
状态方程 dp[i][j][1] = Math.max(dp[i - 1][j][1], dp[i - 1][j - 1][0] - prices[i])
解答:
class Solution {public int maxProfit(int[] prices) {int n = prices.length;int max = 2;int[][][] dp = new int[n][max + 1][2];for(int j = 0; j <= max; j++) {dp[0][j][0] = 0;dp[0][j][1] = -prices[0];}for(int i = 1; i < n; i++) {for(int j = 1; j <= max; j++) {dp[i][j][0] = Math.max(dp[i - 1][j][0], dp[i - 1][j][1] + prices[i]);dp[i][j][1] = Math.max(dp[i - 1][j][1], dp[i - 1][j - 1][0] - prices[i]);}}return dp[n - 1][max][0];}
}
188.买卖股票的最佳时机IV
我的思路:
和上一题代码一样,只是这题给定了最大交易次数k,只要把上一题的max换成k就行
解答:
class Solution {public int maxProfit(int k, int[] prices) {int n = prices.length;int[][][] dp = new int[n][k + 1][2];for(int j = 0; j <= k; j++) {dp[0][j][0] = 0;dp[0][j][1] = -prices[0];}for(int i = 1; i < n; i++) {for(int j = 1; j <= k; j++) {dp[i][j][0] = Math.max(dp[i - 1][j][0], dp[i - 1][j][1] + prices[i]);dp[i][j][1] = Math.max(dp[i - 1][j][1], dp[i - 1][j - 1][0] - prices[i]);}}return dp[n - 1][k][0];}
}
相关文章:
Day50 动态规划 part11
Day50 动态规划 part11 123.买卖股票的最佳时机III 我的思路: 这道题考虑了交易次数 j(最大次数为2),以及某天 i 应该买or卖股票(两种状态) 用三维数组表示 dp[i][j][0] – 第i天结束时,交易j…...
Docker 搭建私有镜像仓库
一、镜像仓库简介 Docker的镜像仓库是一个用于存储和管理Docker镜像的中央位置。镜像仓库的主要作用是提供一个集中的地方,让用户可以上传、下载、删除和共享Docker镜像。镜像仓库又可以分为公共镜像仓库和私有仓库镜像仓库: 公共镜像仓库 Docker Hub 是…...
Nginx反向代理与Tomcat实现ssm项目前后端分离部署
Nginx nginx是一款http和支持反向代理的web服务器,以其优越的性能被广泛使用。以下是百度百科的介绍。 Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔赛索耶夫为俄罗斯访问量第二的Rambler.…...
element UI 日期选择器 当前年份之前不可选
<el-date-pickertype"year"format"YYYY"value-format"YYYY"v-model"declareYear"placeholder"请选择年份":disabled-date"disabledDateFun"/>function disabledDateFun(time) {if (time.getFullYear() <…...
windows wireshark抓包rtmp推流出现TCP Retransmission
解决办法:tcp.port1935 && !(tcp.analysis.retransmission)...
C++之std::initializer_list详解
相关文章系列: C/C中{}的用法总结(全)_c {}-CSDN博客 目录 1.引言 2.容器的初始化 3.函数中使用std::initializer_list 4.自定义类型中使用std::initializer_list 5.迭代std::initializer_list 6. 在模板中使用std::initializer_list 7.std::initializer_lis…...
4月9日学习记录
[GXYCTF 2019]禁止套娃 涉及知识点:git泄露,无参数RCE 打开环境,源码什么的都没有,扫描后台看看 扫描发现存在git泄露 用githack下载查看得到一串源码 <?php include "flag.php"; echo "flag在哪里呢&#…...
解析快手滑块验证码的逆向工程
快手滑块验证码是一种常见的反机器人验证方式,通过模拟用户拖动滑块来验证用户身份。本文将介绍如何逆向工程快手滑块验证码的加密算法和轨迹生成方式,并提供详细的代码实现。 1. 加密算法解析 首先,我们需要了解滑块验证码生成时所用的加密…...
mysql运维知识总结
1. 日志 1.1 错误日志 错误日志是 MySQL 中最重要的日志之一,它记录了当 mysqld 启动和停止时,以及服务器在运行过 程中发生任何严重错误时的相关信息。当数据库出现任何故障导致无法正常使用时,建议首先查看此日志。 该日志是默认开启的&…...
【目标检测】-入门知识
1、回归与分类问题 回归问题是指给定输入变量(特征)和一个连续的输出变量(标签),建立一个函数来预测输出变量的值。换句话说,回归问题的目标是预测一个连续的输出值,例如预测房价、股票价格、销售额等。回归问题通常使用回归分析技术,例如线性回归、多项式回归、决策树…...
翻译笔实现文字识别功能的原理
翻译笔作为一种便携式设备,近年来在语言学习、旅游、商务交流等领域中逐渐受到人们的青睐。其核心功能之一便是文字识别,即将纸质或电子文档中的文字快速、准确地转化为机器可读的文本格式。那么,翻译笔是如何实现这一神奇功能的呢࿱…...
文件批量重命名,繁体中文秒变简体中文,轻松实现高效翻译
在数字化时代,我们的工作、学习和生活都离不开电脑文件。随着时间的推移,文件数量不断增加,管理起来变得越来越困难。你是否曾经为如何高效、有序地管理文件而烦恼?现在,有一款强大的文件批量重命名工具,它…...
UML学习
UML(Unified Modeling Language):统一建模语言,提供了一套符号和规则来帮助分析师和设计师表达系统的架构、行为和交互 类图:描绘类、接口之间的关系(继承、实现、关联、依赖等)以及类的内部结构(属性和方法),直观展现系统的静态…...
【话题:工作生活】2022年工作总结--疫情下的上海,疫情中的我。
现在是阳历2023年11月27日星期一,我再次开始撰写自己的年终工作总结。希望再过1、2个月,这份年终总结能够出炉,与大家相遇。 给自己定个小目标,年终的工作生活总结坚持写10年。我2017年毕业,之后就开始写每年的年终总结…...
13.磁盘逻辑卷管理
目录 概述实践查看盘 概述 实践 查看盘 命令 lsblk [rootks2p-hadoop04 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sdb 8:16 0 447.1G 0 disk ├─sdb1 8:17 0 200M 0 part /boot/efi ├─sdb2 8:18 …...
SFTP服务详解:安全高效的文件传输新选择
在数字化日益盛行的今天,文件传输已成为我们日常生活和工作中不可或缺的一部分。然而,传统的文件传输方式往往存在着安全隐患和效率低下的问题。幸运的是,SFTP(SSH File Transfer Protocol)服务的出现为我们提供了一个安全、高效的文件传输解决方案。今天,就让我们一起深…...
mp4转flv怎么转?电脑怎么把视频转成flv?
MP4(MPEG-4 Part 14)是一种多媒体容器格式,广泛用于包含视频、音频、字幕等多种数据流。MP4因其高度灵活性、压缩效率和兼容性成为视频领域的主流格式,支持范围涵盖从在线视频到移动设备的各类应用场景。 FLV文件格式的多个优点 …...
计算机视觉——Python OpenCV BGR转HSV
这里将介绍如何使用 OpenCV 与 Python 来作彩色影像转HSV(RGB to HSV 或 BGR to HSV),在写 Python 影像处理程序时常会用到 OpenCV cvtColor 作颜色空间转换的功能,接下来介绍怎么使用 Python 搭配 OpenCV 模块来进行 RGB/BGR 转 HSV 彩色转HSV空间。 H…...
DC9 Debian和sql注入
信息收集 sudo arp-scan -l 列出局域网主机 arp-scan向局域网中所有可能的ip地址发出arp请求包,如果得到arp回应,就证明局域网中某台主机使用了该ip dc9的ip : 192.168.146.133 访问网页 cms为Debian 端口扫描 22端口是filtered 隐藏目…...
Windows系统上运行appium连接iOS真机自动化测试
步骤: 1、windows安装tidevice工具 2、Mac系统打包安装WebDriverAgent(WDA)工具 3、安装Appium 4、连接iOS手机 iOS自动化的实现和执行都依赖Mac系统,因为需要通过Xcodebuild编译安装WDA (WebDriverAgent)到iOS设备中,通过WDA实现对被测应用进行操作。而Windows系统无…...
BG3ModManager:博德之门3模组管理终极解决方案
BG3ModManager:博德之门3模组管理终极解决方案 【免费下载链接】BG3ModManager A mod manager for Baldurs Gate 3. This is the only official source! 项目地址: https://gitcode.com/gh_mirrors/bg/BG3ModManager 你是否曾经为《博德之门3》的模组管理而烦…...
Agent OS:AI智能体开发的操作系统级解决方案
1. 项目概述:一个为AI智能体而生的操作系统最近在AI智能体开发圈子里,一个名为“Agent OS”的项目热度持续攀升。它来自Rivet.dev团队,定位非常清晰:一个专为构建、运行和管理AI智能体而设计的操作系统。如果你正在尝试将大语言模…...
终极CoreCycler完全指南:5步掌握CPU单核稳定性测试与精准调校
终极CoreCycler完全指南:5步掌握CPU单核稳定性测试与精准调校 【免费下载链接】corecycler Script to test single core stability, e.g. for PBO & Curve Optimizer on AMD Ryzen or overclocking/undervolting on Intel processors 项目地址: https://gitco…...
如何通过Jellyfin Android TV客户端打造家庭影院级媒体体验?
如何通过Jellyfin Android TV客户端打造家庭影院级媒体体验? 【免费下载链接】jellyfin-androidtv Android TV Client for Jellyfin 项目地址: https://gitcode.com/gh_mirrors/je/jellyfin-androidtv 想要在智能电视上享受专业的媒体管理体验吗?…...
Arm Neoverse CMN-700 HN-F寄存器架构与缓存一致性配置详解
1. Arm Neoverse CMN-700 HN-F寄存器架构概述在现代SoC设计中,一致性互连网络(Coherent Mesh Network)是实现多核处理器高效协同工作的核心基础设施。作为Arm Neoverse平台的关键组件,CMN-700通过其独特的网格拓扑结构和分布式节点…...
告别网络依赖:CircuitJS1桌面版带你体验离线电路仿真的自由
告别网络依赖:CircuitJS1桌面版带你体验离线电路仿真的自由 【免费下载链接】circuitjs1 Standalone (offline) version of the Circuit Simulator with small modifications based on modified NW.js. 项目地址: https://gitcode.com/gh_mirrors/circ/circuitjs1…...
基于Docker部署OpenOffice无头服务实现文档自动化处理
1. 项目概述与核心价值最近在折腾文档处理自动化流程,发现很多老项目或者特定场景下,对Office文档的兼容性要求极高,尤其是那些需要处理.doc、.xls、.ppt等老格式的场景。直接用现代办公套件(比如LibreOffice)去处理&a…...
揭秘GPT超级提示工程:从原理到实战,打造高效AI协作指南
1. 项目概述:当“Awesome”遇见“Super Prompting”最近在GitHub上闲逛,发现了一个挺有意思的仓库,叫“CyberAlbSecOP/Awesome_GPT_Super_Prompting”。光看这名字,就透着一股“硬核”和“集大成”的味道。作为一个长期和各类大语…...
Excalidraw草图AI技能:从图形解析到自动化代码生成实战
1. 项目概述:一个能“读懂”你草图的AI技能如果你经常用Excalidraw画流程图、架构图或者UI草图,那你一定遇到过这样的场景:画完一张图,想把它整理成文档,或者想基于这张图生成一些代码,又或者想让它自己动起…...
Proof Engine:简化零知识证明开发,降低区块链应用门槛
1. 项目概述:Proof Engine,一个为现代开发者设计的证明引擎如果你和我一样,在构建需要复杂逻辑验证、状态证明或零知识证明(ZKP)相关应用时,常常感到头疼——工具链复杂、学习曲线陡峭、不同框架间的兼容性…...
