Pagini recente » Cod sursa (job #250856) | Cod sursa (job #354992) | Cod sursa (job #400005) | Cod sursa (job #2789657) | Cod sursa (job #681393)
Cod sursa(job #681393)
var
v,a,x,c:array[1..100000] of longint;
f,g:text;
ok:boolean;
n,i,j,lmax:longint;
begin
assign(f,'scmax.in');assign(g,'scmax.out');
reset(f);rewrite(g);
read(f,n);
lmax:=0;
for i:=1 to n do
begin
read(f,v[i]);
ok:=true; j:=1;
while (j<=lmax) and (ok=true) do
begin
if v[i]<=x[j] then
begin
x[j]:=v[i];
ok:=false;
a[i]:=j;
end;
inc(j);
end;
if ok then
begin
inc(lmax);
x[lmax]:=v[i];
a[i]:=lmax;
end;
end;
j:=lmax; i:=n;
while lmax<>0 do
begin
if a[i]=lmax then
begin
c[lmax]:=v[i];
dec(lmax);
end;
dec(i);
end;
writeln(g,j);
for i:=1 to j do
write(g,c[i],' ');
close(f);close(g);
end.