poj1458

来源:互联网 发布:我知你好未再百度 编辑:程序博客网 时间:2024/06/05 18:05
#include <iostream>#include <cstdio>#include <cstring>#include <climits>#include <algorithm>using namespace std;char a[1000],b[1000];int dp[1000][1000];int solve(){    memset(dp,0,sizeof(dp));    int i,j;    for(i=0;*(a+i)!='\0';++i)        for(j=0;*(b+j)!='\0';++j)            if(*(a+i)==*(b+j))                dp[i+1][j+1]=dp[i][j]+1;            else                dp[i+1][j+1]=max(dp[i][j+1],dp[i+1][j]);    return dp[i][j];}int main(){    while(scanf("%s",a)!=EOF)    {        scanf("%s",b);        printf("%d\n",solve());    }    return 0;}

0 0