【HDU 1159】Common Subsequence (最长公共子序列)

来源:互联网 发布:js eval函数 编辑:程序博客网 时间:2024/06/13 21:13

这里是题目

Common Subsequence
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 40645 Accepted Submission(s): 18757

Problem Description
A subsequence of a given sequence is the given sequence with some elements (possible none) left out. Given a sequence X =

#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>using namespace std;int main(){    char s1[1000];    char s2[1000];    while(~scanf("%s%s",s1+1,s2+1))    {        s1[0]='0',s2[0]='0';        int m=strlen(s1)-1;        int n=strlen(s2)-1;        int dp[1100][1100]={0};        //数组要开的足够大         for(int i=1;i<=m;i++)        {            for(int j=1;j<=n;j++)            {                if(s1[i]==s2[j])                    dp[i][j]=dp[i-1][j-1]+1;                else dp[i][j]=max(dp[i-1][j],dp[i][j-1]);            }        }        printf("%d\n",dp[m][n]);     }return 0;}
阅读全文
0 0