Cod sursa(job #482181)

Utilizator andreii1Ilie Andrei andreii1 Data 2 septembrie 2010 18:55:12
Problema Subsir crescator maximal Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 0.68 kb
var v,l:array[1..100] of longint;
    i,n,j,max,x:longint;
    f,g:text;
begin
assign(f,'scmax.in');
assign(g,'scmax.out');
reset(f);
rewrite(g);
readln(f,n);
for i:=1 to n do read(f,v[i]);

l[n]:=1;

for i:=n-1 downto 1 do
    begin
    max:=0;
    for j:=i+1 to n do
    if (v[i]<v[j]) and (l[j]>max) then max:=l[j];
    l[i]:=1+max;
    end;
max:=0;
for i:=1 to n do
if l[i]>max then
   begin
   max:=l[i];
   x:=i;
   end;
writeln(g,max);
while max>0 do
begin
write(g,v[x],' ');

for i:=x+1 to n do
    begin
    if (l[i]=max-1) and (v[i]>v[x]) then
       begin
       x:=i;
       break;
       end;
    end;
max:=max-1;
end;
close(f);
close(g);
end.