Cod sursa(job #220932)

Utilizator Adrian001Vladulescu Adrian Adrian001 Data 13 noiembrie 2008 19:39:49
Problema Subsir crescator maximal Scor 35
Compilator fpc Status done
Runda Arhiva educationala Marime 0.93 kb
Type vector=array[1..100000] of longint;
var f,g:text;
    n,i,max,poz,j:longint;
    a,l,recon:vector;

Begin
Assign(f,'scmax.in');Reset(f);
Assign(g,'scmax.out');Rewrite(g);
Readln(f,n);
For i:=1 to n do Read(f,a[i]);
l[n]:=1;
recon[n]:=0;
For i:=n-1 downto 1 do
 Begin
  max:=0;
  For j:=i+1 to n do
   If (a[i]<a[j]) and (max<l[j]+1) then Begin
                                         max:=l[j]+1;
                                         recon[i]:=j;
                                        end;
  If max=0 then Begin
                 l[i]:=1;
                 recon[i]:=0;
                end
           else l[i]:=max;
 end;
max:=l[1];
poz:=1;
For i:=2 to n do
 If max<l[i] then Begin
                   max:=l[i];
                   poz:=i;
                  end;
Writeln(g,max);
{While recon[poz]<>0 do
 Begin
  Write(g,a[poz],' ');
  poz:=recon[poz];
 end;   }
Write(g,a[poz]);
Close(f);
Close(g);
end.