最长公共子序列

 1 //最长公共子序列 
 2 #include<iostream>
 3 #include<cstdio>
 4 #include<cstdlib>
 5 using namespace std;
 6 string s1,s2;
 7 int f[100][100];
 8 int main()
 9 {
10     cin>>s1>>s2;
11     int len1=s1.length(),len2=s2.length();
12     for(int i=1;i<=len1;i++)
13     {
14         for(int j=1;j<=len2;j++)
15         {
16             if(s1[i-1]==s2[j-1])
17             f[i][j]=f[i-1][j-1]+1;
18             else
19             f[i][j]=max(f[i-1][j],f[i][j-1]);
20         }
21     }
22     printf("%d",f[len1][len2]);
23     return 0;
24 }
View Code
原文地址:https://www.cnblogs.com/zzyh/p/6679798.html