hdu 1254 推箱子 廣搜 深搜

2021-06-06 06:10:51 字數 514 閱讀 2923

注意以下幾點

1.  箱子是否可走

2. 人是否可達箱子後面

3. 箱子的每個方向只走一次,而不是每個位置

廣搜箱子路徑,深搜人可否達箱子後面, 記錄方向用visb[10][10][4]來記錄

#include#include#include#include#include#includeusing namespace std;

int a[10][10], m, n, sx, sy, px, py, visb[10][10][4], visp[10][10], flag;

int mov[4][2]= ;

struct node;

void init()

//cout

}printf("-1\n");

}int main()

return 0;

}

第一次深蒐時,搜尋到了忘記return了……效率好低

hdu 1254 推箱子(兩次廣搜)

這題乙個下午了,現在終於過了 用了兩次廣搜,一次搜箱子到目標地,第二次搜人是可以到推動箱子的地方,要注意的是箱子可能會阻擋人,也可以來回的推。給幾組資料就知道了 這題資料都是後面討論版中提供的 4 30 0 0 0 0 1 0 2 3 1 4 1 5 50 3 0 0 0 1 0 1 4 0 0 0...

推箱子 廣搜

題目 時限 1000ms 記憶體限制 10000k 總時限 3000ms 描述絕大多數人都玩過推箱子的遊戲,控制乙個人將箱子推動到目標位置即獲得勝利。現請你編寫乙個程式,判斷將箱子推到目標位置至少需要多少步。輸入推箱子的平面區域為固定大小 10 10 使用10行10列輸入推箱子的初始局面。其中,0代...

hdu 1254 推箱子遊戲

這個題目我就不說,鏈結在這裡 主要我想說的是,一開始是我用2個三圍陣列來分別標記人和箱子走過的四個方向,但不知怎麼回事行不通。於是就用乙個四維陣列來標記狀態,嘻嘻,過了。好吧,還是直接上 了。1 include2 include3 include4 5using namespace std 6int...