讨论 / 为啥只有70啊
695270656 2011-08-22 19:04:00
点我顶贴 收藏 删除
var

i,j,m,n,l,k:longint;

b:array[1..101,1..101] of longint;

begin

readln(n);

for i:=n downto 1 do

begin

read(b[i,1]);

b[i,2]:=1;

b[i,3]:=0;

end;

for i:=n-1 downto 1 do

begin

l:=0;

k:=0;

for j:=i+1 to n do

begin

if (b[j,1]>b[i,1])and(b[j,2]>l)and(b[i,1]>0) then

begin

l:=b[j,2];

k:=j;

end;

if l>0 then begin b[i,2]:=l+1;b[i,3]:=k; end;

end;

end;

k:=1;

for j:=n downto 1 do

begin

if b[j,2]>b[k,2] then k:=j;

end;

writeln(b[k,2]);

end.

#1 Conon@2011-08-22 18:13:00
回复 删除
我也是70

点1 5 7 不T

#2 ingoier@2011-08-22 19:04:00
回复 删除
这道题目用这种最长上升(下降)序列方法做是不行的,要用nlogn的方法。
查看更多回复
提交回复