Cod sursa(job #914578)

Utilizator Dddarius95Darius-Florentin Neatu Dddarius95 Data 14 martie 2013 11:51:42
Problema Subsir crescator maximal Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 1.06 kb
program subsir_creste_de_nu_se_mai_opreste;
type vect=array[1..1000]of integer;
var v,l:vect;
    n,i,k,x,max,imax:integer;
    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,v[i]);
fillchar(l,n,0);
l[n]:=1;
for i:=n-1 downto 1 do begin
                       x:=0;
                       for k:=i+1 to n do if (v[k]>=v[i])and(l[k]>x)then x:=l[k];
                       l[i]:=1+x;
                       end;
max:=l[1];imax:=1;
for i:=1 to n do if l[i]>max then begin
                                  max:=l[i];
                                  imax:=i;
                                  end;
writeln(g,max);

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