這篇文章沒有什麼技術含量,這道題也是一道典型的bfs問題。
寫這篇只是因為這是我遇見得第一道bfs題(當時是在一次賽場上,那時還沒接觸bfs自然也沒ac)
記錄我解出來得第一道bfs
下面貼**,因為注釋很詳細,我就不多贅述了。
#includeusing namespace std;
struct xy
node,top; //定義儲存座標得結構體
char vis[21][21]; //用於儲存地圖
bool a[21][21]; //用於判斷是否已走過
int b[21][21],f=0; //用於記錄走到某一位置走了幾步
int n,m,i,j,startx,starty,endx,endy;
int dx[5]=;
int dy[5]=; //四個方向
void bfs()
for(i=1;i<=4;i++)
if(vis[i][j]=='*')
}memset(b,0x3f,sizeof(b));
bfs();
if(f)
cout<
else
cout << "-1";
}