最長公共子串行問題(動態規劃)

2021-07-30 08:13:09 字數 486 閱讀 7055

time limit: 1000ms

memory limit: 65536kb

problem description

給定兩個序列x=

input

輸入資料有多組,每組有兩行 ,每行為乙個長度不超過500的字串(輸入全是大寫英文本母(a,z)),表示序列x和y。

output

每組輸出一行,表示所求得的最長公共子串行的長度,若不存在公共子串行,則輸出0。

example input

abcbdab

bdcaba

example output

4

hint

#include#includeint main()

else}}

printf("%d\n",c[n1][n2]);

}return 0;

}

動態規劃 最長公共子串行問題

最長公共子串行問題 longest common subsequence problem 簡稱lcs問題。題目為給定兩個序列x y求它們的lcs 最長公共子串行 這裡的子串行z的定義為 z中的元素既在x中也在y中,並且他們在x y中滿足嚴格的下標為乙個增序列 假設下標從左到右依次增大 另外,不要求z...

最長公共子串行問題 動態規劃

給定兩個字串s1s2.sn和t1t2.tn。求出這兩個字串最長的公共子串行 輸入 abcicba abdkscab 輸出 abca 定義dp i j 為s1 si和t1 tj對應的lcs的長度 s1 si 1和t1 tj 1對應的公共子列有三種情況 當si 1 tj 1時,在s1 si和t1 tj的...

動態規劃 最長公共子串行問題

動態規劃d題 題目 include define n 500 includeint main 初始化首列陣列c的第1列是0 for j 0 j len2 j 初始化首行陣列c的第1行是0 for i 1 i len1 i 動態規劃 for j 1 j len2 j 比較x的第i個元素與y的第j個元素...