Pagini recente » Cod sursa (job #2046215) | Cod sursa (job #1353502) | Cod sursa (job #1031079) | Cod sursa (job #189851) | Cod sursa (job #1138678)
program damer;
var t:array[1..100] of integer;
n,i,ans:integer;
procedure tipar;
var i:integer;
begin
for i:=1 to n do write(t[i],' ');
writeln;
end;
procedure dame(k:integer);
var i,j:integer;
corect:boolean;
begin
if k=n+1 then begin
if ans = 0 then tipar;
inc(ans);
end
else
for i:=t[k]+1 to n do
begin
t[k]:=i;
corect:=true;
for j:=1 to k-1 do
if (t[j]=t[k]) or (abs(j-k)=abs(t[j]-t[k])) then
corect:=false;
if corect then dame(k+1);
end;
t[k]:=0;
end;
begin
assign(input,'damesah.in');
reset(input);
assign(output,'damesah.out');
rewrite(output);
readln(n);
dame(1);
writeln(ans);
close(output);
end.