【Leetcode】718. 最长重复子数组
2024-09-08 00:44:01
最长重复子数组有一下性质
A: [1,2,3,2,1]
B: [3,2,1,4,7]
设横是A竖是B,有规律:若横元和竖元相等,则为1,不等为0
1 2 3 2 1
3 0 0 1 0 1
2 0 1 0 1 0
1 1 0 0 0 1
4 0 0 0 0 0
7 0 0 0 0 0
可见最长子数组坐标是(0,2)(1,4)(2,5)
设计dp二维数组,若横元和竖元相等,dp[i][j]=dp[i-1][j-1]有
1 2 3 2 1
3 0 0 1 0 1
2 0 1 0 2 0
1 1 0 0 0 3
4 0 0 0 0 0
7 0 0 0 0 0
则其中最大值3就是答案
class Solution {
int dp[1001][1001];
public:
int findLength(vector<int>& A, vector<int>& B) {
memset(dp, 0, sizeof(dp));
int M = A.size(), N = B.size(), ans = 0;
for(int i = 1; i <= M; i++) {
for(int j = 1; j <= N; j++) {
if(A[i - 1] == B[j - 1]) {
dp[i][j] = dp[i - 1][j - 1] + 1;
ans = max(ans, dp[i][j]);
}
}
}
return ans;
}
};
最新文章
- 【Python】使用正则表达式实现计算器练习
- U-boot的目录结构及spl功能
- CSS中如何让元素隐藏
- Html中模态框(弹出框)使用入门
- POJ 2386 Lake Counting(深搜)
- Saltstack异步执行命令(十三)
- 使用QTP测试Web对象
- COOKIE&;&;SESSION
- 一步一步搭建客服系统 (2) 如何搭建SimpleWebRTC信令服务器
- Java学习小结(1)-数组的创建与传参
- js replace如何实现全部替换
- 我的Python成长之路---第三天---Python基础(10)---2016年1月16日(雾霾)
- C. Bear and Colors
- Nginx错误页面优雅显示
- JQ实战天猫淘宝放大镜
- react项目后台及上线步骤
- iis7 设置http 自动跳转到https
- VSCode插件开发全攻略(九)常用API总结
- jvm-垃圾收集
- 案例:Redis在唯品会的大规模应用
热门文章
- A Child&#39;s History of England.14
- Netty4.x 源码实战系列(一): 深入理解ServerBootstrap 与 Bootstrap (1)
- 转 序列化Serializable和Parcelable的区别详解
- Linux学习 - 网络命令
- clickhouse输入输出格式 TSKV CSV
- springboot项目中集成ip2region遇到的问题及终极解决办法
- Hadoop生态圈学习-1(理论基础)
- [BUUCTF]REVERSE——Java逆向解密
- 小迪安全 Web安全 基础入门 - 第五天 - 资产架构&;端口&;应用&;CDN&;WAF&;站库分离&;负载均衡
- python开发环境软件包安装相关 failed with error code 1 in /tmp/pip-build-vn_f_e1n/psutil/