#include#include#include#include#includeusing namespace std; int main() { string s1,s2; cin>>s1>>s2; int max_sum = max(s1.size(),s2.size()); int dp[max_sum + 4][max_sum + 4]; memset(dp,0,sizeof(dp)); for(int i = 1;i <= s1.size();i++) for(int j = 1;j <= s2.size();j++) { if(s1[i - 1] == s2[j - 1]) dp[i][j] = dp[i - 1][j - 1] + 1; else dp[i][j] = max(dp[i][j-1],dp[i-1][j]); } cout<<dp[s1.size()][s2.size()]; }//dp算法
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:717 |
C语言程序设计教程(第三版)课后习题8.1 (C语言代码)浏览:528 |
简单的a+b (C语言代码)浏览:528 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:885 |
【计算球体积】 (C语言代码)浏览:1102 |
求圆的面积 (C语言代码)浏览:1670 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:633 |
C语言程序设计教程(第三版)课后习题10.1 (C语言代码)浏览:567 |
A+B for Input-Output Practice (III) (C语言代码)浏览:569 |
局部变量作函数返回值的问题浏览:981 |