Cod sursa(job #571359)

Utilizator originalalexmarin alexandru originalalex Data 4 aprilie 2011 12:49:44
Problema Multimi2 Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.35 kb
program multimi2;
var f1,f2:text;
    i,n:longint;
begin
assign(f1,'multimi2.in');
reset(f1);
read(f1,n);
close(f1);
assign(f2,'multimi2.out');
rewrite(f2);
if n mod 4=0 then
  begin
  writeln(f2,'0');
  writeln(f2,n div 2);
  for i:=1 to n do
    if (i mod 4=1) or (i mod 4=0) then
      write(f2,i,' ');
      writeln(f2);
  writeln(f2,n div 2);
  for i:=1 to n do
    if (i mod 4=2) or (i mod 4=3) then
      write(f2,i,' ');

  end;
if n mod 4=1 then
  begin
  writeln(f2,'1');
  writeln(f2,n div 2+1);
for i:=1 to n do
   if (i mod 4=2) or (i mod 4=1) then
    write(f2,i,' ');
    writeln(f2);
  writeln(f2,n div 2);
for i:=1 to n do
  if (i mod 4=0) or (i mod 4=3) then
    write(f2,i,' ');
    end;
  if n mod 4=2 then
    begin
    writeln(f2,'1');
    writeln(f2,n div 2);
  for i:=1 to n do
     if (i mod 4=1) or (i mod 4=0) then
      write(f2,i,' ');
      writeln(f2);
    writeln(f2,n div 2);
  for i:=1 to n do
    if (i mod 4=2) or (i mod 4=3) then
      write(f2,i,' ');
     end;
  if n mod 4=3 then
    begin
    writeln(f2,'0');
    writeln(f2,n div 2+1);
    for i:=1 to n do
     if (i mod 4=1) or (i mod 4=2) then
      write(f2,i,' ');
      writeln(f2);
    writeln(f2,n div 2);
    for i:=1 to n do
      if (i mod 4=3) or (i mod 4=0) then
      write(f2,i,' ');
     end;
close(f2);
end.