3. (25 points) Dynamic Programming Given the pseudocode and input, write down the
expected output, including the table b and c.
Input: X = "GSTSAQB", Y = "AGGTAB".
LCS-LENGTH(X, Y)
1 m = X.length
2 n = Y.length
3 let b[1..m, 1..n] and c[0...m, 0..n] be new tables
4 for i = 1 to m
5 for j = 1 to n
6 if x<sub>i</sub> == y<sub>j</sub>
7 c[i,j] = c[i-1,j-1] + 1
8 b[i, j] = "\diagup"
9 elseif c[i-1,j] ? c[i, j-1]
10 c[i, j] = c[i-1,j]
11 b[i, j] = "|"
12 else c[i, j] = c[i, j-1]
13 b[i, j] = "-"
14
15 return c and b