hdu 1254 推箱子遊戲

2021-06-22 05:37:35 字數 887 閱讀 6279

這個題目我就不說,鏈結在這裡

主要我想說的是,一開始是我用2個三圍陣列來分別標記人和箱子走過的四個方向,但不知怎麼回事行不通。。。

於是就用乙個四維陣列來標記狀態,嘻嘻,過了。。。

好吧,還是直接上**了。。。。

1 #include2 #include3 #include4

5using

namespace

std;

6int visited[8][8][8][8];//

記錄人和箱子的狀態

7int map[8][8];8

int dir[4][2]=,,,};//

上、下、左、右

9int

m,n;

10int

px,py,sx,sy,ex,ey;

1112

struct

point

19};

2021

void bfs(int x,int

y)34

for(int i=0;i<4;i++)

56q.push(q);

57 visited[q.x][q.y][q.bx][q.by]=1;58

}59}60 printf("

-1\n");

61}6263

64int

main()else

if(map[i][j]==3

)else

if(map[i][j]==4)81

}82}83 memset(visited,0,sizeof

(visited));

84bfs(px,py);85}

86return0;

87}88

hdu 1254 推箱子遊戲

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

HDU 1254 推箱子(搜尋)

by cxlove 以前就做過的一題,重溫一下 推箱子遊戲,首先廣搜箱子的路徑,每一次移動都要判斷人是否能到達指定位置 bfs,dfs都行 我採用兩次bfs解決問題 在箱子的移動中,判重的時候需要乙個三維陣列,箱子從不同方向過來,人的位置是不一樣的,也就意味著狀態不一樣 id cxlove incl...

HDU 1254 推箱子 雙層BFS

推箱子 time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status description 推箱子是乙個很經典的遊戲.今天我們來玩乙個簡單版本.在乙個m n的房間裡有乙個箱子和乙個搬運工,搬運工的工作就是把...