Advertisement
Iam_Sandeep

Untitled

Jul 28th, 2022
972
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.51 KB | None | 0 0
  1. def Lcs( s1: str, s2: str) -> str:
  2.     m,n = len(s1),len(s2)
  3.     dp = {}
  4.     def lcs(i,j,vec):
  5.         if (i,j) in dp:return dp[(i,j)]
  6.        
  7.         if i==m or j==n:return 0
  8.        
  9.         if s1[i]==s2[j]:
  10.             vec.append(s1[i])
  11.             dp[(i,j)] = 1+lcs(i+1,j+1,vec)
  12.             return dp[(i,j)]
  13.         else:
  14.             dp[(i,j)] = max(lcs(i,j+1,vec),lcs(i+1,j,vec))
  15.             return dp[(i,j)]
  16.     vec=[]
  17.     lcs(0,0,vec)
  18.     print(vec)
  19. X = "AGGTAB"
  20. Y = "GXTXAYB"
  21. print(Lcs(X,Y))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement