Cod sursa(job #1054044)

Utilizator ValeraShulghin Valera Valera Data 13 decembrie 2013 11:47:16
Problema Subsir crescator maximal Scor 70
Compilator fpc Status done
Runda Arhiva educationala Marime 0.69 kb
var a,b,c:array[1..100000] of longint;
    i,j,k,n,max,aux:longint;
    f,g:text;
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]);
  for i:=1 to n do
    b[i]:=1;

  for i:=1 to n do
    begin
      for j:=1 to i do
        if (a[j]<a[i]) then
          if b[j]+1>b[i] then  b[i]:=b[j]+1;
    end;

  max:=0;
  for i:=1 to n do
    if b[i]>max then max:=b[i];
  k:=max;aux:=0;
  for i:=n downto 1 do
    if b[i]=max then
      begin
        max:=max-1;
        aux:=aux+1;
        c[aux]:=a[i];
      end;
  writeln(g,aux);
  for i:=aux downto 1 do
  write(g,c[i],' ');
  close(f);close(g);
end.