human
Write me a code to longest Common Subsequence and the other steps required given the following:
Longest Common Subsequence | DP | Dynamic Programming implementation of LCS problem.
Returns length of LCS for X [ 0. . m - 1 ] , Y [ 0. . n - 1 ].
Following steps build L [ m + 1 ] [ n + 1 ] in bottom up fashion Note : L [ i ] [ j ] contains length of LCS of X [ 0. . i - 1 ] and Y [ 0. . j - 1 ].
L [ m ] [ n ] contains the length of LCS of X [ 0. . n - 1 ] & Y [ 0. . m - 1 ].
end of function lcs Driver program to test the above function"
Solution in Python:
assistant
#Here is code to longest Common Subsequence and the other steps required.
 def lcs ( X , Y ) :
	m = len ( X )
	n = len ( Y )
	L = [ [ None ] * ( n + 1 ) for i in xrange ( m + 1 ) ]
	for i in range ( m + 1 ) :
		for j in range ( n + 1 ) :
			if i == 0 or j == 0 :
				L [ i ] [ j ] = 0
			elif X [ i - 1 ] == Y [ j - 1 ] :
				L [ i ] [ j ] = L [ i - 1 ] [ j - 1 ] + 1
			else :
				L [ i ] [ j ] = max ( L [ i - 1 ] [ j ] , L [ i ] [ j - 1 ] )
	return L [ m ] [ n ]
X = " AGGTAB "
Y = " GXTXAYB "
print " Length ▁ of ▁ LCS ▁ is ▁ " , lcs ( X , Y )