Pagini recente » Cod sursa (job #2100531) | Cod sursa (job #1853733) | Cod sursa (job #2914347) | Cod sursa (job #1623606) | Cod sursa (job #203638)
Cod sursa(job #203638)
program Scmax;
var
fl : text;
a, b, s : array[1..100000] of longint;
n, i, j, k : integer;
begin
assign(fl,'scmax.in');
reset(fl);
readln(fl,n);
for i := 1 to n do
begin
read(fl,a[i]);
b[i] := n+1;
s[i] := 0;
end;
close(fl);
s[n] := 1;
b[n] := n+1;
for i := n downto 1 do
for j := i+1 to n do
begin
if (a[j] > a[i]) and (s[j]+1 > s[i]) then
begin
s[i] := s[j]+1;
b[i] := j;
end;
end;
k := 1;
for i := 1 to n do
if s[i] > s[k] then
k := i;
assign(fl,'scmax.out');
rewrite(fl);
writeln(fl,s[k]);
while b[k] <> n+1 do
begin
write(fl,a[k],' ');
k := b[k];
end;
write(fl,a[k]);
close(fl);
end.