PASCAL 找出最長子字串

2025-01-13 23:35:20 字數 1754 閱讀 6429

1樓:網友

可以用字尾陣列來做。

具體可看**:字尾陣列——處理字串的有力工具。

子串的最大和 pascal

2樓:匿名使用者

直接給你寫下程式吧var

a:array[1..100000] of integer;

n,i,ans,len,tmp,beg:longint;

beginread(n);

for i:=1 to n do

read(a[i]);

tmp:=0;

ans:=0;

len:=0;

beg:=0;

for i:=1 to n do

beginif tmp+a[i]>ans then

beginans:=tmp+a[i];

len:=i-beg;

endelse if (tmp+a[i]=ans) and (i-beg>len) then

len:=i-beg;

if tmp+a[i]<0 then

beginbeg:=i;

tmp:=0;

endelse tmp:=tmp+a[i];

end;writeln(ans);

end.

pascal 找乙個字串中指定子串的位置 不是起始位,是所有的!!

3樓:網友

用pos找乙個刪乙個,知道找不到為止。

需要更加快速的演算法可以手寫kmp演算法。

程式段:(設s是原串,t為模式串)

repeat

k:=pos(t,s);

if k=0 then break;

delete(s,k,1);

until k=0;

4樓:

建議您用一下pos函式。

pascal當中如何獲取字串最大的長度。

5樓:發動吧命運之骰

字串只有乙個長度。

比如字串s

長度為length(s)

最長公共上公升字串 pascal

6樓:

n<3000的遊碧御不會,不過n<300的還是可以寫的:

var i,j,k,n:longint;

f:array[0..300,0..300,0..300]of integer;

a,b:array[1..300]of integer;

function max(a,b:integer):integer;

beginif(a>神巖慧逗b)then exit(a);

exit(b);

end;begin

readln(n);

for i:=1 to n do read(a[i]);

for i:=1 to n do read(b[i]);

for k:=1 to 300 do beginfor i:=1 to n do beginfor j:

1 to n do beginif(a[i]=b[j])and(a[i]endelse begin

f[i,j,k]:=max(f[i-1,j,k],f[i,j-1,k]);

end;end;

end;end;

writeln(f[n,n,300]);

end.

看圖找出字,看圖找出18個字

我怎麼看出來20個 一 二 三 六 立 日 竟 音 口 兒 兄 克 競 章 古 十 早 旦 言 亙 立,章,早,日,十,口,兒,克,兄,古,六,一,二,三,旦,音,竟,競 剛好18個 罟,立,口,日,兒,二,一,十,音,早,章,兄,克,古,六,幹,士,兀 克,章,立,早,日,十,音,兒,兄,口,二,...

純文字情侶網名最長字,純文字情侶網名最長8個字

原來不是每次回頭 都有人在原地等待 所有關於你的一切 我乙個人倒帶默寫 哭到全世界都崩潰 笑到全世界都顛覆 我以為你是我的暖 我以為你是我的情 烟花再美只是瞬間 情話再甜也是敷衍 求8個字的有詩意的情侶網名只要8個字的 是兩個名字加起來一共八個字的 還是每個名字8個字啊 愛乙個人,沒有對錯,只有願不...

找出描寫龍的詞語,找出描寫龍的四字詞語

氣勢洶洶,殺氣騰騰 耀武揚威,得意洋洋 形態各異 希望幫到你 望採納 謝謝!騰雲駕霧 怒目相視 氣勢洶洶 殺氣騰騰 耀武揚威 得意洋洋 騰雲駕霧,氣勢洶洶,殺氣騰騰,耀武揚威,得意洋洋,妙不可言,美不勝收 形容龍的四字成語 臥虎藏龍 龍飛鳳舞 龍騰虎躍 生龍活虎 龍精虎猛 一 臥虎藏龍 w h c ...