Cod sursa(job #110218)

Utilizator YO128813Iuonac Radu-Cosmin YO128813 Data 25 noiembrie 2007 21:16:41
Problema Multimi2 Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.59 kb
var a,b:array[1..500000]of longint;
    n,lena,lenb,i:longint;
begin
assign(input,'multimi2.in');reset(input);
assign(output,'multimi2.out');rewrite(output);
readln(n);
lena:=0;lenb:=0;
while n>3  do begin
   inc(lena);
   a[lena]:=n;
   inc(lena);
   a[lena]:=n-3;
   inc(lenb);
   b[lenb]:=n-1;
   inc(lenb);
   b[lenb]:=n-2;
   n:=n-4;
   end;
case n of
     3 : begin writeln('0');
                inc(lena);a[lena]:=2;
                inc(lena);a[lena]:=1;
                writeln(lena);
                for i:=lena downto 1 do write(a[i],' ');
                writeln;
                inc(lenb);b[lenb]:=3;
                writeln(lenb);
                for i:=lenb downto 1 do write(b[i],' ');
         end;
     2 : begin writeln('1');
                inc(lena);a[lena]:=2;
                writeln(lena);
                for i:=lena downto 1 do write(a[i],' ');
                writeln;
                inc(lenb);b[lenb]:=1;
                writeln(lenb);
                for i:=lenb downto 1 do write(b[i],' ');
         end;
     1 : begin writeln('1');
                inc(lena);a[lena]:=1;
                writeln(lena);
                for i:=lena downto 1 do write(a[i],' ');
                writeln;
                writeln(lenb);
                for i:=lenb downto 1 do write(b[i],' ');
         end;
     0 : begin  writeln('0');
                writeln(lena);
                for i:=lena downto 1 do write(a[i],' ');
                writeln;
                writeln(lenb);
                for i:=lenb downto 1 do write(b[i],' ');
         end;
end;
end.