Advertisement
Sajib_Ahmed

LCS

Jul 31st, 2019
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.74 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main()
  5. {
  6.     int n,k,i,j;
  7.     string a,b;
  8.     cin>>a>>b;
  9.     n=a.length();
  10.     k=b.length();
  11.     int lcs[n+1][k+1];
  12.     for(i=0;i<=n;i++)
  13.     {
  14.         lcs[i][0]=0;
  15.     }
  16.     for(j=0;j<=k;j++)
  17.     {
  18.         lcs[0][j]=0;
  19.     }
  20.     for(i=1;i<=n;i++)
  21.     {
  22.         for(j=1;j<=k;j++)
  23.         {
  24.             if(b[j-1]==a[i-1])
  25.             {
  26.                 lcs[i][j]=lcs[i-1][j-1]+1;
  27.             }
  28.             else
  29.             {
  30.                 lcs[i][j]=max(lcs[i][j-1],lcs[i-1][j]);
  31.             }
  32.         }
  33.     }
  34.  for(i=0;i<=n;i++)
  35.     {
  36.         for(j=0;j<=k;j++)
  37.         {
  38.             cout<<lcs[i][j]<<" ";
  39.         }
  40.         cout<<endl;
  41.     }
  42.     cout<<lcs[n][k]<<endl;
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement