HDU1159——Common Subsequence
来源:互联网 发布:大禹 知乎 编辑:程序博客网 时间:2024/05/20 03:46
题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1159
分析:用一个二维的表格来记录以前的最优值,递推关系式为:
当前字符str1[i] == str2[j],dp[i][j] = dp[i -1][j-1] + 1;
否则,dp[i][j] = max(dp[i -1][j] ,dp[i][j -1]);
参考代码:
#include<stdio.h>#include<string.h>#define M 2010char str1[M];char str2[M];int dp[M][M];inline int max(const int a, const int b){return a > b ? a : b;}void main(){int nLen1, nLen2;int i,j;int nMax;while(scanf("%s %s",&str1,&str2) != EOF){nLen1 = strlen(str1);nLen2 = strlen(str2);memset(dp,0,sizeof(dp));nMax = 0;for(i = 1; i <= nLen1; ++i){for(j = 1; j <= nLen2; ++j){if(str1[i - 1] == str2[j - 1]){dp[i][j] = dp[i - 1][j - 1] + 1;}else{dp[i][j] = max(dp[i - 1][j], dp[i][j - 1]);}nMax = max(nMax, dp[i][j]);}}printf("%d\n",nMax);}}
- HDU1159——Common Subsequence
- HDU1159——Common Subsequence
- 【hdu1159】common subsequence —— 二维dp
- 【DP复习4—LCS】HDU1159——Common Subsequence
- ACM-DP之Common Subsequence——HDU1159
- HDU1159 Common Subsequence (LCS)
- HDU1159--Common Subsequence
- hdu1159-Common Subsequence
- hdu1159 Common Subsequence
- HDU1159 Common Subsequence
- HDU1159:Common Subsequence
- hdu1159 Common Subsequence DP
- HDU1159 Common Subsequence
- HDU1159,Common Subsequence,toCharArray()
- HDU1159:Common Subsequence(LCS)
- HDU1159 Common Subsequence
- hdu1159 Common Subsequence(LCS)
- HDU1159---Common Subsequence
- struts的s:iterator循环指定次数
- 11 ScrollView
- DAO调用Oracle带自定义类型的存储过程.
- 根据几种典型的WEB服务器应用的特点做出的系统架构建议
- 12 ListView
- HDU1159——Common Subsequence
- mkfifo 创建管道IO 进程间交互
- poj-2516-Minimum Cost-最小费用最大流
- 13 Dialog
- 算法-java版算法竞赛入门解题代码-第3章习题
- linux安装jdk1.7
- 关于log4j:WARN No appenders could be found for logger (org.apache.commons.digest错误
- GCC常用的编制指令
- 14 AutoCompleteTextView