思路:這道題的解法很多,深搜廣搜都可以,而我用深搜來解它,首先我們可以將第乙個節點壓入佇列中,然後我們依次搜尋當前樓層可達到的樓層,並且判斷是否越界,如果沒有越界並且該樓層未被訪問過我們就將該節點壓入佇列中,為什麼判斷是否被訪問呢,因為如果當前到達樓層有正確解的話早就找到退出了,再次訪問到它很明顯他就是個死迴圈,所以我們要做乙個訪問的判斷,並且當前樓層壓入佇列過後也要設定為已訪問;
上**
#include
using
namespace std;
int n,a,b,lt[
205]
;bool vis[
205]
; 訪問陣列
struct nodex;
queue q;
intmain()
);//將第乙個壓入佇列中
while
(!q.
empty()
)),vis[xx]=1
;//如果未越界並且未被訪問,壓入佇列並且標記為已訪問,步數加1;
if(yy>=1&&
!vis[yy]
)q.push
((node)
),vis[yy]=1
;}if(x.id==b)cout<
else cout<
;return0;
}
奇怪的電梯 bfs搜尋
呵呵,有一天我做了乙個夢,夢見了一種很奇怪的電梯。大樓的每一層樓都可以停電梯,而且第ii層樓 1 le i le n 1 i n 上有乙個數字k i 0 le k i le n ki 0 ki n 電梯只有四個按鈕 開,關,上,下。上下的層數等於當前樓層上的那個數字。當然,如果不能滿足要求,相應的按...
T1 奇怪的電梯(BFS)
題目背景 呵呵,有一天我做了乙個夢,夢見了一種很奇怪的電梯。大樓的每一層樓都可以停電梯,而且第 i 層樓 1 i n 上有乙個數字 ki 0 ki n 電梯只有四個按鈕 開,關,上,下。上下的層數等於當前樓層上的那個數字。當然,如果不能滿足要求,相應的按鈕就會失靈。例如 3 3 1 2 5 代表了 ...
P1135 奇怪的電梯 BFS
呵呵,有一天我做了乙個夢,夢見了一種很奇怪的電梯。大樓的每一層樓都可以停電梯,而且第ii層樓 1 le i le n 1 i n 上有乙個數字k i 0 le k i le n ki 0 ki n 電梯只有四個按鈕 開,關,上,下。上下的層數等於當前樓層上的那個數字。當然,如果不能滿足要求,相應的按...