Cod sursa(job #4529)

Utilizator CezarMocanCezar Mocan CezarMocan Data 5 ianuarie 2007 12:03:12
Problema Dame Scor 90
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.36 kb
var n,i,aux,rest:longint;
    W:array[1..1010] of longint;
begin
assign(input,'dame.in');reset(input);
assign(output,'dame.out');rewrite(output);
readln(n);
if n=1 then
        begin
        writeln(1);
        writeln('1 1');
        end;
if n=2 then
        begin
        writeln(0);
        end;
if n=3 then
        begin
        writeln(0);
        end;
rest:=n mod 12;
for i:=1 to n div 2 do
        W[i]:=2*i;
if (rest=3)or(rest=9) then
        begin
        aux:=2;
        for i:=1 to n div 2 do
                W[i]:=W[i+1];
        W[n div 2]:=aux;
        end;
for i:=n div 2+1 to n do
        W[i]:=(i-n div 2)*2-1;
if rest=2 then
        begin
        aux:=W[n div 2+1];
        W[n div 2+1]:=W[n div 2+2];
        W[n div 2+2]:=aux;
        for i:=n div 2+3 to n-1 do
                W[i]:=W[i+1];
        W[n]:=5;
        end;
if rest=8 then
        begin
        i:=n div 2+1;
        while i<=n do
                begin
                aux:=W[i];
                W[i]:=W[i+1];
                W[i+1]:=aux;
                inc(i,2);
                end;
        end;
if (rest=3)or(rest=9) then
        begin
        for i:=n div 2+1 to n-2 do
                W[i]:=W[i+2];
        W[n-1]:=1;
        W[n]:=3;
        end;
writeln(n);
for i:=1 to n do
        writeln(i,' ',W[i]);
close(input);close(output);
end.