讨论 / ???????????
GCX 2013-01-26 05:48:00
点我顶贴 收藏 删除
var

n,ans:longint;

a:array[0..100]of integer;

function ok(x,k:longint):boolean;

var i:longint;

begin

ok:=true;

for i:=1 to k-1 do

if (a[i]=x)or(abs(x-a[i])=abs(i-k)) then exit(false);

end;

procedure try(k:longint);

var i:longint;

begin

if k>n then

begin

if ans<3 then

begin

for i:=1 to n-1 do write(a[i],' ');

writeln(a[n]);

end;

inc(ans);

exit;

end;

for i:=1 to n do

if ok(i,k) then

begin

a[k]:=i;

try(k+1);

end;

end;

begin

ans:=0;

readln(n);

fillchar(a,sizeof(a),0);

try(1);

writeln(ans);

end.

#1 xiaogang@2015-08-01 19:48:35
回复 删除
路过。。
#2 White@2015-08-01 20:31:13
回复 删除
<a>什么鬼</a>
查看更多回复
提交回复