EOJ_1039_最长连续公共子序列
//暴力拿75,时间不够
using namespace std;int get(string a, string b)
{int ans=0;int lenA=a.size();int lenB=b.size();for(int i=0;i<lenA;i++){for(int j=0;j<lenB;j++){if(a[i]==b[j]){int k=1;while(a[i+k]==b[j+k] && i+k<lenA && j+k<lenB) k++;ans = max(ans,k);}}}return ans;
}int main()
{string a,b;cin>>a>>b;int ans=get(a, b);cout<<ans;return 0;
}
```
//dp 拿88,空间不够
#include <bits/stdc++.h>
#define N 50130
using namespace std;int dp[10000][10000]={0};int get(string a, string b){int len1 = a.size();int len2 = b.size();int max = 0;for (int i = 0; i < len1; i++) {for (int j = 0; j < len2; j++) {if (a[i] == b[j]) {if (i == 0|| j == 0) {dp[i][j] = 1;}else {dp[i][j] = dp[i-1][j-1] + 1;}}else {dp[i][j] = 0;}if (max < dp[i][j]) {max = dp[i][j];}}}return max;
}int main()
{string a,b;cin>>a>>b;int ans=get(a,b);cout<<ans<<endl;return 0;
}
//dp+滚动数组+从后往前遍历防止数据被覆盖 AC
#include <bits/stdc++.h>
#define N 50130
using namespace std;int dp[N]={0};int get(string a, string b){int len1 = a.size();int len2 = b.size();int ans=0;for(int i=0;i<len1;i++){for(int j=len2-1;j>=0;j--){if(a[i]==b[j]){if(j==0) dp[0] = 1;dp[j] = dp[j-1]+1;}else dp[j]=0;ans = max(dp[j],ans);}}return ans;
}int main()
{string a,b;cin>>a>>b;int ans=get(a,b);cout<<ans<<endl;return 0;
}
EOJ_1039_最长连续公共子序列相关推荐
- 最长公共子序列、最长连续公共子序列、最长递增子序列
面试中除了排序问题,还会经常出现字符串的子序列问题,这里讲解使用动态规划解决三个常见的子序列问题: 1.最长公共子序列问题(LCS,longest-common-subsequence problem ...
- hdoj1423 最长上升公共子序列
hdoj1423 题目分析: 两个数组a[n1] , b[n2], 求最长上升公共子序列. 我们可用一维存储 f[i] 表示 b 数组以 j 结尾, 与 a[] 数组构成的最长公共上升子序列. 对 ...
- 5-3 最长连续递增子序列 (20分)
5-3 最长连续递增子序列 (20分) 给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列.例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为(3,4,6,8 ...
- HDU 3308 线段树求区间最长连续上升子序列长度
题意:两种操作,Q L R查询L - R 的最长连续上升子序列长度,U pos val 单点修改值 #include <bits/stdc++.h> #define N 100005 us ...
- pta最长连续递增子序列C语言,pta 习题集 5-5 最长连续递增子序列 (dp)
给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列.例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为(3,4,6,8). 输入格式: 输入第1行给出正整数n ...
- 7-1 最长连续递增子序列 (20 分)
给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列.例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为(3,4,6,8). 输入格式: 输入第1行给出正整数n ...
- 7-181 最长连续递增子序列 (20 分)
7-181 最长连续递增子序列 (20 分) 给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列.例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为(3,4, ...
- 7-8 最长连续递增子序列 (15 分)
** 7-8 最长连续递增子序列 (15 分) ** 给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列.例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为( ...
- 习题3.4 最长连续递增子序列 (20 分) 数据结构 PTA
给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列.例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为(3,4,6,8). 输入格式: 输入第1行给出正整数n ...
最新文章
- 苹果iCloud或在今年晚些时候支持游戏中心和苹果地图
- Linux VIM IDE
- 看完Andoird9.0 Pie的隐藏特性,我买了SSL证书
- 简单聊聊C#中lock关键字
- 多路串口服务器的应用及应用范围介绍
- jtessboxeditorfx 界面显示不出来_不需要发酵,自制家庭版健康小油条,不会失败的配方...
- 【Kafka】使用confluent本地安装和使用kafka
- php金币格式转换,php 资金格式转换函数_PHP教程
- 触摸传感器的电路图符号_如何看懂汽车电路常用图形符号,看完这篇文章就懂了...
- linux固定dns怎么设置,Linux之如何进行固定IP、DNS等设置
- java靜態常量_Java靜態變量、靜態常量、靜態方法
- /sbin/mount.vboxsf: mounting failed with the error: Protocol error
- pr生成html文件格式,pr支持哪些格式
- Android ORC文字识别之识别身份证号等(附源码)
- java抓取百度搜索结果,一个百度搜索结果内容获取爬虫
- 加班到凌晨三点?一张图看懂华为员工睡眠时间!!
- 房屋托管平台“朴邻”签约法大大,电子合同提升客户签约体验
- day04-Testin云测平台操作
- 央视气象女主播王蓝一揭秘天气预报潜规则
- D435i:control_transfer returned error, index: 768, error: No data available, number: 61