Dowemo


void(int x,int y,int step)


{


 int next={{1,0},{-1,0},{0,1},{0,-1}};


 int tx,ty;


 if(x==p&&y==q)


 {


 if(step<minx)


 minx=step;


 return ;


 }


 for(int i=1;i<=4;i++)


 {


 tx=x+next[i][0];


 ty=y+next[i][1];


 if(tx<1||tx>n||ty<1||ty>m)


 continue;


 if(a[tx][ty]==0&&book[tx][ty]==0)


 {


 book[tx][ty]=1;


 dfs(tx,ty,step+1);


 book[tx][ty]=0;


 }


 }


}












Copyright © 2011 Dowemo All rights reserved.    Creative Commons   AboutUs