Pagini recente » Cod sursa (job #3256940) | Cod sursa (job #168857) | Cod sursa (job #3201736) | Cod sursa (job #296939) | Cod sursa (job #703544)
Cod sursa(job #703544)
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;aux[n+1]:=maxlongint;
for i:=2 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],' ');}
k:=1;
b[k]:=a[p];
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.