• HDU 1159 Common Subsequence(LCS)


              

                Common Subsequence


     

    Problem Description
    A subsequence of a given sequence is the given sequence with some elements (possible none) left out. Given a sequence X = <x1, x2, ..., xm> another sequence Z = <z1, z2, ..., zk> is a subsequence of X if there exists a strictly increasing sequence <i1, i2, ..., ik> of indices of X such that for all j = 1,2,...,k, xij = zj. For example, Z = <a, b, f, c> is a subsequence of X = <a, b, c, f, b, c> with index sequence <1, 2, 4, 6>. Given two sequences X and Y the problem is to find the length of the maximum-length common subsequence of X and Y.
    The program input is from a text file. Each data set in the file contains two strings representing the given sequences. The sequences are separated by any number of white spaces. The input data are correct. For each set of data the program prints on the standard output the length of the maximum-length common subsequence from the beginning of a separate line.
     

     

    Sample Input
    abcfbc
    abfcab
    programming
    contest
    abcd
    mnp
     

     

    Sample Output
    4
    2
    0
     
    代码:
     1 #include<iostream>
     2 #include<cstring>
     3 #define max(a,b) (a>b?a:b)
     4 #define MAXN 1001+10
     5 using namespace std;
     6 
     7 int c[MAXN][MAXN];
     8 
     9 int main()
    10 {
    11     //freopen("in.txt","r",stdin);
    12     int s1_len,s2_len,i,j,t;
    13     char s1[MAXN],s2[MAXN];
    14     cin>>t;
    15     while(t--)
    16     {
    17         cin>>s1>>s2;
    18         s1_len=strlen(s1);
    19         s2_len=strlen(s2);
    20         for(i=0;i<=s1_len;i++)
    21         c[i][0]=0;
    22         for(i=0;i<=s2_len;i++)
    23         c[0][i]=0;
    24         for(i=1;i<=s1_len;i++)
    25         for(j=1;j<=s2_len;j++)
    26         if(s1[i-1]==s2[j-1])
    27         c[i][j]=c[i-1][j-1]+1;
    28         else
    29         c[i][j]=max(c[i-1][j],c[i][j-1]);
    30         cout<<c[s1_len][s2_len]<<endl;
    31     }
    32     return 0;
    33 }
  • 相关阅读:
    终于成功发布我的博客园处女贴,不过,真的颇费周章,两个htmleditor都非常不好用~~
    全文本代码着色(带源码和示例)
    BlogBench Ver 1.0 发布
    [在windows上使用Unix工具]cygwin
    Linux下压缩与解压
    Linux设置界面或命令行启动
    perl模块安装
    Linux下patch的制作和应用
    TAR命令参数详解
    在windows上使用Sysinternals工具
  • 原文地址:https://www.cnblogs.com/homura/p/4670966.html
Copyright © 2020-2023  润新知