uva 111 History Grading 最长公共子序列
来源:互联网 发布:java输入字符串语句 编辑:程序博客网 时间:2024/05/02 01:58
<strong>这题比较阴的地方就是 他输入的是事件发生的时间, 例如 4123, 就是1事件发生在4时间, 2事件发生在1时间, 也就是说, 4123其实是2341。 剩下的就是求最长公共子序列了。 dp[i][j], 表示一字符串到了i,二字符串到了j, 如果字符串1[i] == 字符串2[j], 那么 他就 等于 dp[i - 1][j - 1] + 1. 如果不等 他就等于max(dp[i - 1][j], dp[i][j - 1]).</strong>
</pre><pre name="code" class="cpp">
</pre><pre name="code" class="cpp">#include <stdio.h>#include <string.h>#include <stdlib.h>#include <iostream>#include <algorithm>#include <queue>#define mem(a) memset(a, 0, sizeof(a))#define maxn 25using namespace std;int dp[maxn][maxn], num1[maxn], num2[maxn];int main(int argc, char *argv[]){int n, i, j, k;scanf("%d",&n);mem(num1);for(i = 1;i <= n;i++){scanf("%d",&j);num1[j] = i;}while(scanf("%d",&j) != EOF){num2[j] = 1;for(i = 2;i <= n;i++){scanf("%d", &j);num2[j] = i;} for(i = 1;i <= n;i++) { for(j = 1;j <= n;j++) { if(num1[i] == num2[j]) { dp[i][j] = max(dp[i][j], dp[i - 1][j - 1] + 1); } else { dp[i][j] = max(dp[i][j], dp[i - 1][j]); dp[i][j] = max(dp[i][j], dp[i][j - 1]); } } }printf("%d\n", dp[n][n]);mem(num2);mem(dp);}return 0;}
0 0
- UVA 111 History Grading 最长公共子序列
- dp 最长公共子序列 uva 111-History Grading
- UVa 111 - History Grading (最长公共子序列)
- UVa 111 History Grading (最长公共子序列)
- Uva-111 History Grading 裸最长公共子序列
- UVA-111 History Grading(dp+最长公共子序列)
- UVA - 111 History Grading 最长公共子序列
- uva 111 History Grading 最长公共子序列
- UVA 111 History Grading(最长公共子序列dp)
- UVA 111 History Grading (最长公共子序列)
- History Grading - UVa 111 最长公共子序列 注意序列输入
- 最长公共子序列-History Grading
- uva 111 History Grading(动态规划——最长公共子序列)
- UVA 111 History Grading(题意杀,最长公共子序列)
- uvaoj 111 History Grading 最长公共子序列LCS
- UVa 111 - History Grading 最长递增子序列 LIS
- UVa 111|History Grading|动态规划|最长上升子序列
- uva111 - History Grading(最长公共子序列LCS)
- solaris移植到linux的大坑:bash和sh中环境变量继承的差异
- 项目前端----WCF
- 安装gid12.0.4linux-x64l后启动报错/liblzma.so.5: no version information available 的解决办法
- java 代理模式
- 为何C语言(的函数调用)需要堆栈,而汇编语言却不需要堆栈
- uva 111 History Grading 最长公共子序列
- c++ new/delete的用法
- 【VC疑难】LINK : fatal error LNK1123: failure during conversion to COFF: file invalid
- iOS 开发中正则表达式实践(一)
- 删除.git .repo .gitignore 总结
- MVC 第三章 架构了解
- PCM格式
- android 之手机客户端登陆
- 根据Request获取客户端IP