Cod sursa(job #844655)

Utilizator RusuAlexeiRusu Alexei RusuAlexei Data 29 decembrie 2012 17:47:58
Problema Subsir crescator maximal Scor 70
Compilator fpc Status done
Runda Arhiva educationala Marime 0.7 kb
program subsir_crescator;
  var a,b,d:array[1..100000] of longint;
      n,i,j,m,p:longint;
      f:text;
      buf:array [1..100000] of byte;
begin
  assign(f,'scmax.in');
  reset(f);
  settextbuf(f,buf);
  readln(f,n);
  for i:=1 to n do read(f,a[i]);
  b[1]:=1;
  for i:=2 to n do
   begin
    m:=0;
    for j:=1 to i-1 do
      if a[j]<a[i] then if b[j]>m then begin m:=b[j]; d[i]:=j; end;
    b[i]:=m+1;
   end;
  m:=b[1];
  for i:=2 to n do if b[i]>m then begin m:=b[i]; p:=i; end;
  close(f);
  assign(f,'scmax.out');
  rewrite(f);
  settextbuf(f,buf);
  writeln(f,m);
  for i:=1 to m do begin b[i]:=a[p]; p:=d[p];end;
  for i:=m downto 1 do write(f,b[i],' ');
  close(f);
end.