Pagini recente » Cod sursa (job #916621) | Cod sursa (job #263831) | Cod sursa (job #1135067) | Cod sursa (job #1636408) | Cod sursa (job #1846032)
program sjkg;
var f,g:text;
best,pred:array of integer;
v:array of longint;
bufin,bufout:array [1..1 shl 17] of byte;
i,j,max,pmax,nmp,n:integer;
procedure afisare(p:integer);
begin
if p>-1 then
begin
afisare(pred[p]);
write(g,v[p],' ');
end;
end;
begin
assign(f,'scmax.in'); reset(f);
assign(g,'scmax.out'); rewrite(g);
settextbuf(f,bufin); settextbuf(g,bufout);
readln(f,n);
setlength(v,n+1);
setlength(best,n+1);
setlength(pred,n+1);
max:=1; pmax:=1;
for i:=1 to n do
begin
read(f,v[i]);
best[i]:=1; pred[i]:=-1;
for j:=i-1 downto max do
begin
if (v[j]<v[i])and(best[j]+1>best[i]) then
begin
best[i]:=best[j]+1;
pred[i]:=j;
end;
end;
if best[i]>max then
begin
max:=best[i];
pmax:=i;
end;
end;
writeln(g,max);
afisare(pmax);
close(f); close(g);
end.