• POJ1458 Common Subsequence(最长公共子序列)


    #include <iostream>
    #include <algorithm>
    #include <cstring>
    #include <cmath>
    #include <queue>
    #include <stack>
    #include <map>
    #include <set>
    #include <vector>
    #include <cstdio>
    using namespace std;
    int cmp[1010][1010];
    char s1[1010],s2[1010];
    int main()
    {
        //freopen("in.txt","r",stdin);
        while(~scanf("%s%s",s1+1,s2+1))
        {
            int l1=strlen(s1+1),l2=strlen(s2+1);
            for(int i=0;i<=l1;i++)
                cmp[i][0]=0;
            for(int i=0;i<=l2;i++)
                cmp[0][l2]=0;
            for(int i=1;i<=l1;i++)
            {
                for(int j=1;j<=l2;j++)
                {
                    if(s1[i]==s2[j]) cmp[i][j]=cmp[i-1][j-1]+1;
                    else cmp[i][j]=max(cmp[i-1][j],cmp[i][j-1]);
                }
            }
            printf("%d
    ",cmp[l1][l2]);
        }
        return 0;
    }
  • 相关阅读:
    Python 虚拟环境(VirtualEnv)
    python 枚举
    Python 面向对象编程
    Python 使用模块
    Python 函数
    Python dict & set
    JAVA-工具类
    09-12 练习题
    JAVA-数组
    java-语句
  • 原文地址:https://www.cnblogs.com/d-e-v-i-l/p/5286737.html
Copyright © 2020-2023  润新知