Pagini recente » Cod sursa (job #1666797) | Cod sursa (job #1444290) | Cod sursa (job #3168879) | Cod sursa (job #1498366) | Cod sursa (job #271128)
Cod sursa(job #271128)
type ref = ^elem;
elem = record
val : longint;
urm : ref;
end;
var prim, primmax, ultim, c : ref;
n,nmax,m:longint;
fin,fout:text;
begin
assign(fin,'scmax.in');
reset(fin);
assign(fout,'scmax.out');
rewrite(fout);
read(fin,m);
prim := nil;
ultim := nil;
n := 0;
nmax:=0;
while (not eof(fin)) do begin
new(c);
read(fin,c^.val);
c^.urm := nil;
if (prim = nil) then begin
n := n + 1;
prim := c;
ultim := c;
end
else begin
if (ultim^.val < c^.val) then begin
n := n + 1;
ultim^.urm := c;
ultim := c;
end
else if ultim^.val > c^.val then begin
if (n >= nmax) then begin
nmax := n;
primmax := prim;
end;
prim := c;
ultim := c;
n := 1;
end;
end;
end;
if (nmax < n) then begin
nmax := n;
primmax := prim;
end;
writeln(fout,nmax);
for n := 1 to nmax do begin
write(fout,primmax^.val,' ');
primmax := primmax^.urm;
end;
close(fin);
close(fout);
end.