泸州老坛窖酒价格:骑士之旅

来源:百度文库 编辑:神马品牌网 时间:2024/05/02 20:29:39
谁有骑士之旅的源代码

const maxsize=10;
dx:array[1..8] of integer=(1,2,-1,-2,-2,-1,1,2);
dy:array[1..8] of integer=(2,1,2,1,-1,-2,-2,-1);

var i,j,n,x,y:integer;
board:array[-1..maxsize+2,-1..maxsize+2] of integer;
dir:array[0..maxsize*maxsize] of integer;

procedure print;
var
i,j:integer;
begin
for i:=1 to n do
begin
for i:=1 to n do
if board[i,j]=0 then write(n*n:3)
else write(board[i,j]]:3);
writeln
end;
halt
end;

procedure search(dep.x.y:longint);
var
i:longint;
begin
if dep=n*n;
then print
else for i:=1 to 8 do
if board[x+dx[i],y+dy[i]]=0 then
begin
board[x+dx[i],y+dy[i]]:=dep+1;
search(dep+1,x+dx[i],y+dy[i]);
board[x+dx[i],y+dy[i]]:=0
end
end;

begin
write('input the size of board;');
readln(n);
write('input the start of knight(x,y):');
readln(x,y);
for i:=-1 to n+2 do
for j:=-1 to n+2 do board[i,j]:=-1;
for i:=1 to n do
for j:=1 to n do board[i,j]:=0;
board[x,y]:=1;
search(1,x,y)
end.