lxl 2010-11-11 16:04:00
点我顶贴
收藏
删除
方法:1.:必须用not eof;
2:如果val成数字,不要在打字时搞1的总数;
3:必须有if (ahe=0) or (k>x+y*9)then begin writeln(ahe);end;
4:搜索代码:
procedure search(x,y,he,step:longint);
var
i,j,l,m,x1,y1:longint;
begin
if step<0 then exit;
if (x<=0) or (x>9) or (y<=0) or (y>5) then exit;
if a[x,y]=1 then
begin
a[x,y]:=0;
if he>=ans then ans:=he+1;
search(x+1,y,he+1,step-1);
search(x-1,y,he+1,step-1);
search(x,y-1,he+1,step-1);
a[x,y]:=1;
end
else
begin
search(x+1,y,he,step-1);
search(x-1,y,he,step-1);
search(x,y-1,he,step-1);
end;
end;