... m; z := L[n,m]; repeat if L[i,j] = L[i-1,j-1] + 1 then begin d[i] := 1; i := i - 1; j := j - 1; end else if L[i,j] = L[i-1,j] then i := i - 1 else j := j - 1; until (i=0) or (j=0) end; (*****************************************) ... nó là bit 0 thì k-1 bit còn lại là tự do (tức là ta có L[k-1] dãy). Nếu thứ k của nó là bit 1 thì bit k -1 phải là 0, và k-2 bit còn lại free. Vậy ta có: L[k] = L[k-1] + L[k-2]. Chú ý: L[1]=2 ... −1 có dãy con chung lớn nhất gồm độ dài L(i-1,j-1), do đó L(i,j)=L(i-1,j-1) + 1. (Tư tưởng quy hoạch động thể hiện ở chỗ L(i,j) đạt max thì L(i-1,j-1) cũng phải đạt max). Còn nếu ai ≠bj thì ta...