M 魔戒(四維BFS)

2021-10-10 19:01:21 字數 1212 閱讀 8682

m - 魔戒

description

藍色空間號和萬有引力號進入了四維水窪,發現了四維物體–魔戒。

這裡我們把飛船和魔戒都抽象為四維空間中的乙個點,分別標為 「s」 和 「e」。空間中可能存在障礙物,標為 「#」,其他為可以通過的位置。

現在他們想要盡快到達魔戒進行探索,你能幫他們算出最小時間是最少嗎?我們認為飛船每秒只能沿某個座標軸方向移動乙個單位,且不能越出四維空間。

input

輸入資料有多組(資料組數不超過 30),到 eof 結束。

每組輸入 4 個數 x, y, z, w 代表四維空間的尺寸(1 <= x, y, z, w <= 30)。

接下來的空間地圖輸入按照 x, y, z, w 軸的順序依次給出,你只要按照下面的座標關係迴圈讀入即可。

for 0, x-1

for 0, y-1

for 0, z-1

for 0, w-1

保證 「s」 和 「e」 唯一。

output

對於每組資料,輸出一行,到達魔戒所需的最短時間。

如果無法到達,輸出 「wtf」(不包括引號)。

sample

input

2 2 2 2….s

…#.#..e.#…

2 2 2 2….s

#.e.

.##.

…output13

#include

using namespace std;

const

int n =35;

int vis[n]

[n][n]

[n];

char ma[n]

[n][n]

[n];

int dx[8]

=;int dy[8]

=;int dz[8]

=;int dw[8]

=;struct node t, p;

int x, y, z, w;

void

bfs(

)for

(int i =

0; i <

8; i++)}

}printf

("wtf\n");

}int

main()

}getchar()

;}}}

bfs();

}}

M 魔戒(BFS 四維陣列)

description 藍色空間號和萬有引力號進入了四維水窪,發現了四維物體 魔戒。這裡我們把飛船和魔戒都抽象為四維空間中的乙個點,分別標為 s 和 e 空間中可能存在障礙物,標為 其他為可以通過的位置。現在他們想要盡快到達魔戒進行探索,你能幫他們算出最小時間是最少嗎?我們認為飛船每秒只能沿某個座標...

魔戒(BFS 四維陣列)

description 藍色空間號和萬有引力號進入了四維水窪,發現了四維物體 魔戒。這裡我們把飛船和魔戒都抽象為四維空間中的乙個點,分別標為 s 和 e 空間中可能存在障礙物,標為 其他為可以通過的位置。現在他們想要盡快到達魔戒進行探索,你能幫他們算出最小時間是最少嗎?我們認為飛船每秒只能沿某個座標...

四維陣列 遊戲

小g正在玩一款遊戲,遊戲地圖上有n個點 1到n編號 這些點之間有m條無向邊 沒有重邊 一次系統重新整理會在某個時刻在某點重新整理出一定數量的怪物,系統重新整理出來的怪物只會存在1秒,下一秒就會消失。如果那個時刻小g正好在那個點,那麼小g可以秒殺 秒殺所用時間忽略不計,下同 這個點上的所有怪物。另外,...