program gr10(input,output);
var i,n,p,t,j : integer;
a : array [0..100000] of integer;
begin
p := 0;
readln(n);
for i := 1 to n do read(a[i]);
readln;
i := 2;
while i <= n do
begin
if (a[i - 1]>0) and (a[i]<0) then
begin
{t := a[i - 1];
a[i - 1] := a[i];
a[i] := t;} swap(a[i]);
p := p + 1;
if a[i -2]>0 then
i := i -1;
end
else i := i + 1
end;
writeln(p);
writeln(a[1]);
writeln(a[n])
end.
cHJvZ3JhbSBncjEwKGlucHV0LG91dHB1dCk7CnZhciBpLG4scCx0LGogOiBpbnRlZ2VyOwogICAgYSA6IGFycmF5IFswLi4xMDAwMDBdIG9mIGludGVnZXI7CgpiZWdpbgpwIDo9IDA7CnJlYWRsbihuKTsKIGZvciBpIDo9IDEgdG8gbiBkbyByZWFkKGFbaV0pOwogcmVhZGxuOwogaSA6PSAyOwogICB3aGlsZSBpIDw9IG4gZG8KICAgYmVnaW4KICAgIGlmIChhW2kgLSAxXT4wKSBhbmQgKGFbaV08MCkgdGhlbiAKICAgICAgYmVnaW4KICAgICAgIHt0IDo9IGFbaSAtIDFdOwogICAgICAgYVtpIC0gMV0gOj0gYVtpXTsKICAgICAgIGFbaV0gOj0gdDt9IHN3YXAoYVtpXSk7CiAgICAgICBwIDo9IHAgKyAxOwogICAgICAgaWYgYVtpIC0yXT4wIHRoZW4KICAgICAgIGkgOj0gaSAtMTsKICAgICAgIGVuZAogICAgIGVsc2UgaSA6PSBpICsgMQogICBlbmQ7ICAgIAogICB3cml0ZWxuKHApOwogICB3cml0ZWxuKGFbMV0pOwogICB3cml0ZWxuKGFbbl0pCmVuZC4gICA=