hdu1159 LCS模板题
来源:互联网 发布:科比跟腱断裂赛季数据 编辑:程序博客网 时间:2024/06/07 17:26
题目分析
原题地址
最简单的最长公共子序列(LCS)问题的模板题了。不解释。
------------------------------------------------------------------------
状态转移方程:
dp[i][j]=dp[i-1][j-1]+1 (a[i-1]==b[j-1])
dp[i][j]=max(dp[i-1][j],dp[i][j-1] ) (a[i-1]==b[j-1])
-------------------------------------------------------------------------
dp[i][j]保留的是a[i-1]和b[j-1]的LCS。所以我们最终的结果保存在dp[len1][len2] (len1,len2分别为a,b长度。下标从0开始算起)
代码
#include<iostream>#include<cstdio>#include<cstring>using namespace std;char a[505],b[505];int dp[505][505];int main(){ while(~scanf("%s%s",a,b)) { int len1=strlen(a); int len2=strlen(b); for(int i=0;i<len1;i++) dp[0][i]=0; for(int i=0;i<len2;i++) dp[i][0]=0; for(int i=1;i<=len1;i++) { for(int j=1;j<=len2;j++) { if(a[i-1]==b[j-1]) dp[i][j]=dp[i-1][j-1]+1; else dp[i][j]=max(dp[i-1][j],dp[i][j-1]); } } printf("%d\n",dp[len1][len2]); }}
0 0
- hdu1159 LCS模板题
- hdu1159(LCS模板题)
- hdu1159 LCS
- HDU1159 && POJ1458 Common Subsequence (LCS模版题)
- HDU1159 Common Subsequence (LCS)
- HDU1159:Common Subsequence(LCS)
- hdu1159 Common Subsequence(LCS)
- Hdu1159-Common Subsequence-【LCS】
- HDU1159 && POJ1458:Common Subsequence(LCS)
- HDU1159 && POJ1458:Common Subsequence(LCS)
- hdu1159 Common Subsequence(LCS)
- 【HDU1159】Common Subsequence(LCS/DP)
- HDU1159 Common Subsequence (LCS)
- HDU1159 && POJ1458 Common Subsequence (LCS)
- HDU1159 : Common Subsequence(LCS)
- lcs 入门题 模板
- Common Subsequence(hdu1159(LCS))
- LCS最长公共子序列HDU1159
- 新浪微博API OAuth2 python客户端改进
- hoj2681Magic-Pen1
- qt /usr/bin/ld: cannot find -lGL
- java 去除或者替换字符串里面的数字或者字母
- HDU3371 - Connect the Cities(最小生成树 合并费用为0的点)
- hdu1159 LCS模板题
- linux下TCP通讯相关问题:select控制数据收发 对网络异常情况(如拔网线)的处理 停止程序后如何能快速再次bind
- 杭电 1846(巴什博弈)
- Android Tween动画之RotateAnimation实现图片不停旋转
- Ten Useful Techniques in Go
- EBS DBA指南笔记(一)
- 用记事本写第一个Servlet程序
- 以存储过程实现比对不同表的金额,提升测试效率
- makefile