洛谷 P1852 奇怪的字符串

来源:互联网 发布:淘宝数据包采集 编辑:程序博客网 时间:2024/06/12 00:15

题目描述
输入两个01串,输出它们的最长公共子序列的长度


【题目分析】
n^2暴力。


【代码】

#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;char s1[5002],s2[5002];int dp[5002][5002],l1,l2;int main(){    scanf("%s%s",s1+1,s2+1);    l1=strlen(s1+1); l2=strlen(s2+1);    for (int i=1;i<=l1;++i)        for (int j=1;j<=l2;++j)        {            if (s1[i]==s2[j])                dp[i][j]=dp[i-1][j-1]+1;            dp[i][j]=max(dp[i-1][j],max(dp[i][j-1],dp[i][j]));        }    printf("%d\n",dp[l1][l2]);}
0 0