求仙藥(常規BFS)

2021-09-27 20:46:25 字數 795 閱讀 2070

這篇文章沒有什麼技術含量,這道題也是一道典型的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";

}