Cod sursa(job #830373)
Utilizator | Data | 6 decembrie 2012 19:07:27 | |
---|---|---|---|
Problema | Subsir crescator maximal | Scor | 0 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 1.24 kb |
var v,lung,urm:array[1..100] of integer;
i,j,l,max,max_p:integer;
fi:text;
begin
assign(fi,'scmax.in'); reset(fi);
readln(fi,l);
for i:=1 to l do
begin
read(fi,v[i]);
lung[i]:=1;
urm[i]:=-1;
end;
for i:=l downto 1 do
for j:=i+1 to l do
begin
if v[i]<v[j] then
if lung[i]<1 + lung[j] then
begin
lung[i]:=1 + lung[j];
urm[i]:=j;
end;
end;
max:=-1;
for i:=1 to l-1 do
if lung[i]>max then
begin
max:=lung[i];
max_p:=i;
end;
while urm[max_p]<>-1 do
begin
write(v[max_p],' ');
max_p:=urm[max_p];
end;
write(v[max_p]);
readln;
close(fi);
end.