HDU 1159 Common Subsequence --- DP入门之最长公共子序列
Posted Ritchie丶
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU 1159 Common Subsequence --- DP入门之最长公共子序列相关的知识,希望对你有一定的参考价值。
基础的最长公共子序列
#include <bits/stdc++.h> using namespace std; const int maxn=1e3+5; char c[maxn],d[maxn]; int dp[maxn][maxn]; int main() { while(scanf("%s%s",c,d)!=EOF) { memset(dp,0,sizeof(dp)); int n=strlen(c); int m=strlen(d); for(int i=0;i<n;i++) for(int j=0;j<m;j++) if(c[i]==d[j]) dp[i+1][j+1]=dp[i][j]+1; else dp[i+1][j+1]=max(dp[i+1][j],dp[i][j+1]); printf("%d\n",dp[n][m]); } return 0; }
以上是关于HDU 1159 Common Subsequence --- DP入门之最长公共子序列的主要内容,如果未能解决你的问题,请参考以下文章
HDU 1159 Common Subsequence(裸LCS)
hdu 1159 Common Subsequence(最长公共子序列)