最长公共子序列dp入门
作者:互联网
#include <iostream> #include <string> #include <string.h> #include <vector> #include <time.h> using namespace std; char a[110],b[110]; int dp[110][110]; int maxn(int x,int y) { if(x>=y) return x; return y; } int main() { int lena,lenb,i,j; while(scanf("%s%s",a,b)!=EOF) { lena=strlen(a); lenb=strlen(b); memset(dp,0,sizeof(dp)); for(i=1;i<=lena;i++) for(j=1;j<=lenb;j++) { if(a[i-1]==b[j-1]) dp[j][i]=dp[j-1][i-1]+1; else dp[j][i]=maxn(dp[j-1][i],dp[j][i-1]); } printf("%d\n",dp[lenb][lena]); } return 0; }
标签:lenb,入门,int,110,序列,include,strlen,dp 来源: https://www.cnblogs.com/zhmlzhml/p/13378100.html