Cod sursa(job #246154)
Utilizator | Data | 20 ianuarie 2009 09:19:14 | |
---|---|---|---|
Problema | Multimi2 | Scor | 100 |
Compilator | fpc | Status | done |
Runda | Arhiva de probleme | Marime | 2.35 kb |
var f,g:text;
n,i,j:longint;
begin
assign(f,'multimi2.in');
reset(f);
assign(g,'multimi2.out');
rewrite(g);
readln(f,n);
if n mod 4=0 then
begin
writeln(g,0);
writeln(g,n div 2);
for i:=1 to n do
if ((i-1) mod 4=1)or ((i-1) mod 4=2) then write(g,i,' ');
writeln(g);
writeln(g,n div 2);
for i:=1 to n do
if ((i-1) mod 4=0)or ((i-1) mod 4=3) then write(g,i,' ');
end
else if n mod 4=1 then
begin
writeln(g,1);
writeln(g,((n div 2)+1));
write(g,1,' ');
for i:=2 to n do
if ((i-2) mod 4=1)or ((i-2) mod 4=2) then write(g,i,' ');
writeln(g);
writeln(g,n div 2);
for i:=2 to n do
if ((i-2) mod 4=0)or ((i-2) mod 4=3) then write(g,i,' ');
end
else if n mod 4=2 then
begin
writeln(g,1);
writeln(g,((n div 2)));
write(g,1,' ');
for i:=3 to n do
if ((i-3) mod 4=1)or ((i-3) mod 4=2) then write(g,i,' ');
writeln(g);
writeln(g,n div 2);
write(g,2,' ');
for i:=3 to n do
if ((i-3) mod 4=0)or ((i-3) mod 4=3) then write(g,i,' ');
end
else if n mod 4=3 then
begin
writeln(g,0);
writeln(g,((n div 2+1)));
write(g,1,' ',2,' ');
for i:=4 to n do
if ((i-4) mod 4=1)or ((i-4) mod 4=2) then write(g,i,' ');
writeln(g);
writeln(g,n div 2);
write(g,3,' ');
for i:=4 to n do
if ((i-4) mod 4=0)or ((i-4) mod 4=3) then write(g,i,' ');
end;
close(g);
end.