1006 最長公共子串行Lcs

2021-08-20 21:23:35 字數 842 閱讀 3812

給出兩個字串a b,求a與b的最長公共子串行(子串行不要求是連續的)。

比如兩個串為:

abcicba

abdkscab

ab是兩個串的子串行,abc也是,abca也是,其中abca是這兩個字串最長的子串行。

input

第1行:字串a

第2行:字串b

(a,b的長度 <= 1000)

output

輸出最長的子串行,如果有多個,隨意輸出1個。
input示例

abcicba

abdkscab

output示例

abca

**如下:

#include#include#include#includeusing namespace std;

#define maxn 1500

char a[maxn],b[maxn];

int obj[maxn][maxn];

char res[maxn];

int flag[maxn][maxn];

int main()else if(obj[i][j-1]>obj[i-1][j])else

} }int k=0;

int i=strlen(a);

int j=strlen(b);

while(i>0&&j>0)else if(flag[i][j]==2)else if(flag[i][j]==3)

} //cout<=0;i--)

cout

}

1006 最長公共子串行Lcs

給出兩個字串a b,求a與b的最長公共子串行 子串行不要求是連續的 比如兩個串為 abcicba abdkscab ab是兩個串的子串行,abc也是,abca也是,其中abca是這兩個字串最長的子串行。input 第1行 字串a 第2行 字串b a,b的長度 1000 output 輸出最長的子串行...

1006 最長公共子串行Lcs

基準時間限制 1 秒 空間限制 131072 kb 分值 0 難度 基礎題 給出兩個字串a b,求a與b的最長公共子串行 子串行不要求是連續的 比如兩個串為 abcicba abdkscab ab是兩個串的子串行,abc也是,abca也是,其中abca是這兩個字串最長的子串行。input 第1行 字...

1006 最長公共子串行Lcs

給出兩個字串a b,求a與b的最長公共子串行 子串行不要求是連續的 比如兩個串為 abcicba abdkscabab是兩個串的子串行,abc也是,abca也是,其中abca是這兩個字串最長的子串行。收起第1行 字串a 第2行 字串b a,b的長度 1000 輸出最長的子串行,如果有多個,隨意輸出1...