SSL 1463 公共子串

2021-07-27 11:09:28 字數 814 閱讀 4140

description

設有a、b兩個字串,找出a、b共同子串,每個字串無相同字元,可以不連續,但順序不能顛倒。

input

第一行字串a

第二行字串b

output

最長公共子串的長度.

sample input

abcfbc

abfcab

sample output

兩重迴圈

乙個列舉x的長度

乙個列舉y的長度

如果x[i]=y[j],則f[i,j]:=f[i-1,j-1]。

如果不是則,f[i,j]:=max(f[i,j-1],f[i-1,j]);

**如下;

var

f:array [0..110,0..110] of longint;

i,j:longint;

x,y:string;

begin

readln(x);

readln(y);

fillchar(f,sizeof(f),0);

for i:=1

to length(x) do

for j:=1

to length(y) do

if x[i]=y[j] then f[i,j]:=f[i-1,j-1]+1

else

if f[i-1,j]>f[i,j-1] then f[i,j]:=f[i-1,j]

else f[i,j]:=f[i,j-1];

write(f[i,j]);

end.

SSL 1463 公共子串

description 設有a b兩個字串,找出a b共同子串,每個字串無相同字元,可以不連續,但順序不能顛倒。input 第一行字串a 第二行字串 output 最長公共子串的長度.sample input abcfbc abfcab sample output 兩重迴圈 乙個列舉x的長度 乙個列...

求公共子串行和公共子串

輸入 第一行給出乙個整數n 0最長公共子串行長度。每組結果佔一行。樣例輸入 2asdf adfsd 123abc abc123abc 樣例輸出36 輸入兩個字串,輸出它們的最長子字串。求公共子串以及求公共子串的長度 include include define n 100 char a n b n ...

找公共子串

in asdff fffasdfffaaaf out 5 尋找公共子串,我的思想就是兩層迴圈,最短每層的乙個i開始最大與長的字串的共同子串,遍歷,暴力搜尋。注意大小寫,和注意思路就好 只有280分,如果有優化 請多多指教 如下,include include include using namesp...