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

题解:AcWing 6026 最长公共子上升序列

本文分享的必刷题目是从蓝桥云课、洛谷、AcWing等知名刷题平台精心挑选而来并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。欢迎大家订阅我的专栏算法题解C与Python实现附上汇总贴算法竞赛备考冲刺必刷题C | 汇总【题目来源】AcWing6026. 最长公共子上升序列 - AcWing题库【题目描述】给定两个整数序列写一个程序求它们的最长上升公共子序列。当以下条件满足的时候我们将长度N NN的序列S 1 , S 2 , … , S N S_1,S_2,\dots,S_NS1​,S2​,…,SN​称为长度为M MM的序列A 1 , A 2 , … , A M A_1,A_2,\dots,A_MA1​,A2​,…,AM​的上升子序列存在1 ≤ i 1 i 2 ⋯ i N ≤ M 1\le i_1\lt i_2\lt \dots \lt i_N\le M1≤i1​i2​⋯iN​≤M使得对所有1 ≤ j ≤ N 1\le j\le N1≤j≤N均有S j A i j S_jA_{i_j}Sj​Aij​​且对于所有的1 ≤ j N 1\le j\lt N1≤jN均有S j S j 1 S_j\lt S_{j1}Sj​Sj1​。【输入】输入共四行每两行描述一个给定序列对于每个序列第一行包含其长度M MM第二行包含其序列元素A 1 , A 2 , … , A M A_1,A_2,\dots,A_MA1​,A2​,…,AM​。两个序列的长度不一定相同。【输出】在第一行输出两个序列的最长上升公共子序列的长度L LL。在第二行输出该子序列。如果有不止一个符合条件的子序列则输出任何一个即可。【输入样例】5 1 4 2 5 -12 4 -12 1 2 4【输出样例】2 1 4【算法标签】#线性DP-一维#【代码详解】#includebits/stdc.husingnamespacestd;#defineN505intdp[N][N];// dp[i][j]: x前i个元素与y前j个元素构成的以y[j]为结尾的最长公共上升子序列的长度intx[N],y[N];// 两个输入序列vectorintseq[N];// seq[j]: 当i为某确定值时x前i个元素与y前j个元素构成的以y[j]为结尾的最长公共上升子序列intmain(){intxn,yn;// 两个序列的长度cinxn;// 输入x序列长度// 输入x序列for(inti1;ixn;i){cinx[i];}cinyn;// 输入y序列长度// 输入y序列for(inti1;iyn;i){ciny[i];}// 动态规划计算最长公共上升子序列for(inti1;ixn;i)// 遍历x序列{for(intj1;jyn;j)// 遍历y序列{if(x[i]y[j])// 如果当前元素相同{dp[i][j]1;// 初始化为1seq[j]vectorint();// 清空当前序列// 查找可以接在前面的最长公共上升子序列for(intk1;kj;k){if(y[k]y[j]dp[i-1][k]1dp[i][j])// 上升且可以延长{dp[i][j]dp[i-1][k]1;// 更新长度seq[j]seq[k];// 继承序列}}seq[j].push_back(y[j]);// 添加当前元素}else// 如果当前元素不同{dp[i][j]dp[i-1][j];// 继承之前的结果}}}// 找到最长的公共上升子序列intmxj1;// 记录最长子序列在y中的结束位置for(intj1;jyn;j){if(dp[xn][j]dp[xn][mxj]){mxjj;// 更新最大值位置}}// 输出最长公共上升子序列的长度coutdp[xn][mxj]endl;// 输出最长公共上升子序列的具体元素for(inti0;iseq[mxj].size();i){coutseq[mxj][i] ;}return0;// 程序正常结束}【运行结果】5 1 4 2 5 -12 4 -12 1 2 4 2 1 4

相关文章:

题解:AcWing 6026 最长公共子上升序列

本文分享的必刷题目是从蓝桥云课、洛谷、AcWing等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。 欢迎大…...

LaTeX2Word-Equation:学术写作中的公式转换解决方案

LaTeX2Word-Equation:学术写作中的公式转换解决方案 【免费下载链接】LaTeX2Word-Equation Copy LaTeX Equations as Word Equations, a Chrome Extension 项目地址: https://gitcode.com/gh_mirrors/la/LaTeX2Word-Equation 在学术研究和论文撰写过程中&…...

CSSTree词法分析器深度解析:基于W3C规范的CSS语法验证

CSSTree词法分析器深度解析:基于W3C规范的CSS语法验证 【免费下载链接】csstree A tool set for CSS including fast detailed parser, walker, generator and lexer based on W3C specs and browser implementations 项目地址: https://gitcode.com/gh_mirrors/c…...

碧蓝航线Alas脚本:5步快速配置,彻底告别重复肝船烦恼

碧蓝航线Alas脚本:5步快速配置,彻底告别重复肝船烦恼 【免费下载链接】AzurLaneAutoScript Azur Lane bot (CN/EN/JP/TW) 碧蓝航线脚本 | 无缝委托科研,全自动大世界 项目地址: https://gitcode.com/gh_mirrors/az/AzurLaneAutoScript …...

一次讲透:从“文字接龙“到“超级智能体“,大模型核心概念的血缘图谱

摘要: 在技术圈,我们每天都被 LLM、Agent、RAG、MCP 这些名词轰炸。它们看似孤立,实则是一场长达数年的"接力赛",每一项技术都是为了弥补前者的缺陷而生。本文将为你绘制一张大模型家族的"概念血缘图谱",用一条逻辑主线贯穿始终,让你看清这场 AI 浪潮…...

终极游戏回放分析平台:ReplayBook如何革新英雄联盟比赛数据管理

终极游戏回放分析平台:ReplayBook如何革新英雄联盟比赛数据管理 【免费下载链接】ReplayBook Play, manage, and inspect League of Legends replays 项目地址: https://gitcode.com/gh_mirrors/re/ReplayBook 在英雄联盟的竞技生态中,每场对局都…...

从航模电调到云台电机:聊聊FOC算法在不同场景下的调参实战与避坑指南

从航模电调到云台电机:FOC算法跨领域调参实战全解析 当你在航模电调上调试FOC参数时,那些让电机转速突破20000rpm的PID参数,放在云台电机上可能会直接导致镜头剧烈抖动。这种看似相同的算法在不同应用场景下的表现差异,正是FOC技术…...

《文字定律》后序 和 作者感言

后序: 作者英文不好,在处理中文书籍翻译英文的时候遇见了非常大的困难和阻碍。这个时候多亏了,deepseek、豆包、Grok、ChatGPT,他们每个都很独特而又宣明。 在这漫长的创作期间: Deepseek——是那个认真尽职&#x…...

如何快速在浏览器中实现H.264视频解码:Broadway.js完整入门指南

如何快速在浏览器中实现H.264视频解码:Broadway.js完整入门指南 【免费下载链接】Broadway A JavaScript H.264 decoder. 项目地址: https://gitcode.com/gh_mirrors/br/Broadway Broadway.js是一款强大的JavaScript H.264解码器,它能直接在浏览器…...

FidelityFX-FSR2模块化后端架构设计:如何为自定义图形API构建适配器

FidelityFX-FSR2模块化后端架构设计:如何为自定义图形API构建适配器 【免费下载链接】FidelityFX-FSR2 FidelityFX Super Resolution 2 项目地址: https://gitcode.com/gh_mirrors/fi/FidelityFX-FSR2 FidelityFX-FSR2(FidelityFX Super Resoluti…...

利用 Taotoken 实现多模型路由以保障 AI 应用高可用

利用 Taotoken 实现多模型路由以保障 AI 应用高可用 1. 生产环境中的模型服务连续性挑战 在依赖大模型能力的生产系统中,单一模型供应商的服务稳定性可能成为业务连续性的潜在风险点。常见问题包括突发性服务降级、区域性访问波动或配额耗尽导致的不可用。传统直连…...

SignalR数据备份终极指南:5种消息历史记录存储策略详解

SignalR数据备份终极指南:5种消息历史记录存储策略详解 【免费下载链接】SignalR Incredibly simple real-time web for .NET 项目地址: https://gitcode.com/gh_mirrors/si/SignalR SignalR是一个为.NET开发者提供的实时web通信库,它能够轻松实现…...

3步掌握抖音无水印下载:从单视频到批量处理的完整指南

3步掌握抖音无水印下载:从单视频到批量处理的完整指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback suppo…...

Zettelkasten终极指南:如何用开源卡片盒笔记系统构建你的第二大脑

Zettelkasten终极指南:如何用开源卡片盒笔记系统构建你的第二大脑 【免费下载链接】Zettelkasten Zettelkasten-Developer-Builds 项目地址: https://gitcode.com/gh_mirrors/ze/Zettelkasten 还在为知识碎片化而烦恼吗?Zettelkasten卡片盒笔记系…...

VSCode/PyCharm里Python项目报错‘No module named chardet’?可能是你的虚拟环境在‘捣鬼’

当IDE说找不到chardet时:虚拟环境与解释器选择的深度解析 刚写完一段处理文本编码的Python代码,在终端测试一切正常,可一回到VSCode运行就弹出ModuleNotFoundError: No module named chardet——这个场景对Python开发者来说再熟悉不过。这不是…...

终极指南:如何用Cyber Engine Tweaks提升《赛博朋克2077》游戏性能

终极指南:如何用Cyber Engine Tweaks提升《赛博朋克2077》游戏性能 【免费下载链接】CyberEngineTweaks Cyberpunk 2077 tweaks, hacks and scripting framework 项目地址: https://gitcode.com/gh_mirrors/cy/CyberEngineTweaks Cyber Engine Tweaks是一款专…...

从文字到视频:TaleStreamAI如何用6小时完成AI小说推文全流程自动化

从文字到视频:TaleStreamAI如何用6小时完成AI小说推文全流程自动化 【免费下载链接】TaleStreamAI AI小说推文全自动工作流,自动从ID到视频 项目地址: https://gitcode.com/gh_mirrors/ta/TaleStreamAI 当传统小说推文制作需要数天时间&#xff0…...

别再只会用cv.threshold了!Floyd-Steinberg等4种图像抖动算法,用NumPy手撸一遍才明白

从零实现图像抖动算法:NumPy手写四大经典方法与性能优化实战 当你面对热敏打印机只能输出黑白二值图像的硬件限制时,如何让打印的照片保留更多细节?传统阈值二值化会丢失大量灰度过渡信息,而图像抖动技术通过空间分布模拟灰度变化…...

VMware Workstation Pro 17免费许可证密钥:虚拟机开发的完整激活指南

VMware Workstation Pro 17免费许可证密钥:虚拟机开发的完整激活指南 【免费下载链接】VMware-Workstation-Pro-17-Licence-Keys Free VMware Workstation Pro 17 full license keys. Weve meticulously organized thousands of keys, catering to all major versio…...

7天入门DeepLearningPython:从0掌握前馈神经网络与反向传播算法

7天入门DeepLearningPython:从0掌握前馈神经网络与反向传播算法 【免费下载链接】DeepLearningPython neuralnetworksanddeeplearning.com integrated scripts for Python 3.5.2 and Theano with CUDA support 项目地址: https://gitcode.com/gh_mirrors/de/DeepL…...

为什么MemReduct重启后语言设置会失效?3个关键步骤彻底解决

为什么MemReduct重启后语言设置会失效?3个关键步骤彻底解决 【免费下载链接】memreduct Lightweight real-time memory management application to monitor and clean system memory on your computer. 项目地址: https://gitcode.com/gh_mirrors/me/memreduct …...

Ubuntu Server 22.04.4安装后必做的10件事:从基础配置到Docker环境一键部署

Ubuntu Server 22.04.4安装后必做的10件事:从基础配置到Docker环境一键部署 当你第一次登录到全新的Ubuntu Server系统时,面对这个干净但略显陌生的环境,可能会感到有些无从下手。作为一款广受欢迎的企业级Linux发行版,Ubuntu Ser…...

终极鼠标连点器:免费开源工具,5分钟解放你的双手

终极鼠标连点器:免费开源工具,5分钟解放你的双手 【免费下载链接】MouseClick 🖱️ MouseClick 🖱️ 是一款功能强大的鼠标连点器和管理工具,采用 QT Widget 开发 ,具备跨平台兼容性 。软件界面美观 &#…...

终极指南:worth-calculator移动端适配的响应式设计与性能优化秘籍

终极指南:worth-calculator移动端适配的响应式设计与性能优化秘籍 【免费下载链接】worth-calculator Calculating the actual value of your job beyond just salary 项目地址: https://gitcode.com/gh_mirrors/wo/worth-calculator worth-calculator是一款…...

在Taotoken模型广场中根据任务与预算挑选合适模型的思路

在Taotoken模型广场中根据任务与预算挑选合适模型的思路 1. 理解模型广场的基本结构 Taotoken模型广场将不同厂商的大模型按照功能类型进行分类展示。进入模型广场后,可以看到模型按照文本生成、代码补全、多模态等类别进行划分。每个模型卡片会显示基础信息&…...

LSPosed-Irena:终极Android Hook框架入门指南

LSPosed-Irena:终极Android Hook框架入门指南 【免费下载链接】LSPosed-Irena Useless LSPosed Framework Fork 项目地址: https://gitcode.com/gh_mirrors/ls/LSPosed-Irena LSPosed-Irena是一款功能强大的Android Hook框架,作为LSPosed的分支项…...

从Harvard到GB/T 7714:EndNote里那些关于‘作者年份’格式的隐藏逻辑与实战调校

从Harvard到GB/T 7714:EndNote里那些关于‘作者年份’格式的隐藏逻辑与实战调校 在学术写作中,引用格式的规范性往往决定着论文的专业程度。当我们在EndNote中切换不同的引文样式时,会发现一个有趣的现象:同样的文献列表&#xf…...

XUnity AutoTranslator终极指南:让Unity游戏实现实时多语言翻译

XUnity AutoTranslator终极指南:让Unity游戏实现实时多语言翻译 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 想要畅玩外语游戏却苦于语言障碍?XUnity AutoTranslator作为一款革…...

终极指南:使用VisualCppRedist AIO一键修复Windows系统组件缺失问题

终极指南:使用VisualCppRedist AIO一键修复Windows系统组件缺失问题 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 你是否曾经遇到过新安装的软件无…...

从审计日志看 Taotoken 如何助力企业 API 调用安全管理

从审计日志看 Taotoken 如何助力企业 API 调用安全管理 1. 企业 API 安全管理的关键需求 在企业级 AI 应用场景中,API 调用的透明度和可追溯性至关重要。开发团队需要清晰了解每个 API Key 的使用情况,包括调用时间、消耗资源以及具体请求内容。这种需…...