最近做題缺乏手感,找一道bfs練一練
題目鏈結
這種題目屬於最簡單的那種bfs,需要注意的是遇到樓梯時的處理,如果不滿足通過樓梯的條件,則需要退回到原位置等待,此時原位置也需要入隊。
#include using namespace std;
char maps[22][22];
bool st[22][22];
int n,m;
int dir[2] = ,,,};
struct node;
node s,t;
bool check(node a)
int bfs()
node nxt;
for(int i=0;i<4;i++)
if(maps[nxt.x][nxt.y]=='.')
if(maps[nxt.x][nxt.y]=='|')
}else
}if(maps[nxt.x][nxt.y]=='-')
}else }}
} return -1;
}int main()
if(maps[i][j]=='t')
}} int res=bfs();
cout<}return 0;
}
hdu 1180 詭異的樓梯(bfs)
小記 阿西吧!我就因為乙個dir方向搞錯了,寫的是從左往右是上下左右,用的時候是按上左下右。思路 bfs,首先我們假設沒有樓梯的情況,那麼問題就簡單很多了,bfs隨手可以打出來。打完後再繼續 我們現在要新增可變的樓梯上去。樓梯有個初始狀態,然後有個到達樓梯旁邊時的樓梯的狀態,而這個狀態時和你到達樓梯...
hdu1180詭異的樓梯(bfs)
這道題的意思是哈利波特要從s走到t,中間有那種會改變方向的樓梯,經過樓梯的話一共只用一秒,但是可能會存在有特殊的樓梯會一秒改變一次方向,也就是說可能會等一秒,不會有兩個樓梯連續挨著,還有很重要的一點就是,你不能再樓梯上呆一秒,所以當你找到樓梯的時候,不能把他直接壓進佇列,要直接對它進行處理,然後把處...
HDU1180 詭異的樓梯 BFS
problem description hogwarts正式開學以後,harry發現在hogwarts裡,某些樓梯並不是靜止不動的,相反,他們每隔一分鐘就變動一次方向.比如下面的例子裡,一開始樓梯在豎直方向,一分鐘以後它移動到了水平方向,再過一分鐘它又回到了豎直方向.harry發現對他來說很難找到能...