Cod sursa(job #703517)

Utilizator boby301Bogdan Bacila boby301 Data 2 martie 2012 12:42:52
Problema Subsir crescator maximal Scor 60
Compilator fpc Status done
Runda Arhiva educationala Marime 0.89 kb
var f,g:text;
    a,b,aux:array[1..100000]of longint;
    i,j,max,max1,n,k,p:longint;
    
  
  
begin
 assign(f,'scmax.in');reset(f);
 assign(g,'scmax.out');rewrite(g);
 read(f,n);
 for i:=1 to n do
   read(f,a[i]);
   
 aux[1]:=1;
 for i:=1 to n do
   begin
   max:=0;
     for j:=1 to i-1 do
       begin
         if (a[j]<=a[i]) and (aux[j]>=max) then 
           max:=aux[j];
       end;
     aux[i]:=max+1; 
     if aux[i]>=max1 then begin
                            max1:=aux[i];
                            p:=i;
                          end; 
   end;  
   
  { for i:=1 to n do
    write(aux[i],' ');}
   
   b[1]:=a[p];k:=1; 
   for i:=p-1 downto 1 do
     begin
       if aux[i]=aux[p]-1 then
          begin
          p:=i;
          inc(k);
          b[k]:=a[i];
          end;
       
     end; 
   
   writeln(g,k);
   for i:=k downto 1 do
     write(g,b[i],' ');  
 
 close(f);close(g);
end.