最长公共上升子序列 O(n^2)
2024-08-26 06:56:52
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 5005;
int A[MAXN], B[MAXN], N, M, dp[MAXN];
int main()
{
scanf("%d", &N);
for(int i = 1; i <= N; i++) scanf("%d", &A[i]);
scanf("%d", &M);
for(int i = 1; i <= M; i++) scanf("%d", &B[i]);
for(int i = 1; i <= N; i++)
{
int last = 0;
for(int j = 1; j <= M; j++)
{
if(B[j] < A[i]) last = max(last, dp[j]);
else if(B[j] == A[i]) dp[j] = last + 1;
}
}
int Ans = 0;
for(int i = 1; i <= N; i++) Ans = max(Ans, dp[i]);
printf("%d\n", Ans);
}
其中dp[j]表示B数组恰好匹配到j位的最长长度
最新文章
- Jvm 内存浅析 及 GC个人学习总结
- Output data in a cursor
- android在代码中四种设置控件(以及TextView的文字颜色)背景颜色的方法
- C# 代理HTTP请求
- CodeForces 591A
- DLL模块:C++在VS下创建、调用dll
- mui开发app之多图压缩与上传(仿qq空间说说发表)
- Python 协程总结
- 1、学习笔记之——html
- 解决 HomeBrew 下载缓慢的问题
- Redis之持久化(RDB AOF)
- Bigtable:A Distributed Storage System for Strctured Data
- Path Sum I &;&; II &; III
- 【SpringBoot】服务器端主动推送SSE技术讲解
- linux下redis4.0.2集群部署(利用原生命令)
- 五、secureCRT远程连接工具的使用
- IDAPython安装
- 仿迅雷播放器教程 -- 基于ffmpeg的C++播放器 (1)
- mysql update 将一个表某字段设为另一个表某字段的值
- 为什么mysql要做主从复制?