HDU 2102 A計畫 雙層BFS

2021-06-22 23:27:39 字數 1358 閱讀 1973

problem description

可憐的公主在一次次被魔王擄走一次次被騎士們救回來之後,而今,不幸的她再一次面臨生命的考驗。魔王已經發出訊息說將在t時刻吃掉公主,因為他聽信謠言說吃公主的肉也能長生不老。年邁的國王正是心急如焚,告招天下勇士來拯救公主。不過公主早已習以為常,她深信智勇的騎士lj肯定能將她救出。

現據密探所報,公主被關在乙個兩層的迷宮裡,迷宮的入口是s(0,0,0),公主的位置用p表示,時空傳輸機用#表示,牆用*表示,平地用.表示。騎士們一進入時空傳輸機就會被轉到另一層的相對位置,但如果被轉到的位置是牆的話,那騎士們就會被撞死。騎士們在一層中只能前後左右移動,每移動一格花1時刻。層間的移動只能通過時空傳輸機,且不需要任何時間。

input

輸入的第一行c表示共有c個測試資料,每個測試資料的前一行有三個整數n,m,t。 n,m迷宮的大小n*m(1 <= n,m <=10)。t如上所意。接下去的前n*m表示迷宮的第一層的布置情況,後n*m表示迷宮第二層的布置情況。

output

如果騎士們能夠在t時刻能找到公主就輸出「yes」,否則輸出「no」。

sample input

1

5 5 14

s*#*.

.#...

.....

****.

...#.

..*.p

#.*..

***..

...*.

*.#..

sample output

yes

**:#include#include#include#includeusing namespace std;

#define qq 13

int vis[2][qq][qq];

char map[2][qq][qq];

int fx[4][2]= ;

struct node

;int m,n,t;

int pos;

int sx,sy;

void bfs()

vis[next.pos][next.x][next.y]=1;

next.step=now.step+1;

q.push(next);}}

cout<<"no"<>m>>n>>t;

for(i=1; i<=m; i++)

for(j=1; j<=n; j++)

}for(i=1; i<=m; i++)

for(j=1; j<=n; j++)

}bfs();

}return 0;

}

很簡單的題 可惜 開始第乙個輸入打成&t了 一直wa 一直找不到 下次一定小心tat

HDU 2102 A計畫(雙層BFS)

題目 可憐的公主在一次次被魔王擄走一次次被騎士們救回來之後,而今,不幸的她再一次面臨生命的考驗。魔王已經發出訊息說將在t時刻吃掉公主,因為他聽信謠言說吃公主的肉也能長生不老。年邁的國王正是心急如焚,告招天下勇士來拯救公主。不過公主早已習以為常,她深信智勇的騎士lj肯定能將她救出。現據密探所報,公主被...

ACM 搜尋 hdu 2102 A計畫

problem description 可憐的公主在一次次被魔王擄走一次次被騎士們救回來之後,而今,不幸的她再一次面臨生命的考驗。魔王已經發出訊息說將在t時刻吃掉公主,因為他聽信謠言說吃公主的肉也能長生不老。年邁的國王正是心急如焚,告招天下勇士來拯救公主。不過公主早已習以為常,她深信智勇的騎士lj肯...

HDU 2102 A計畫 三維的迷宮BFS

題意 三維的乙個迷宮,起點在第一層的s 0,0,0 處,問是否能在規定的時間內走到第二層的p 處。代表不能走,代表能夠走,代表傳送門,這裡有乙個trick,走到傳送門的時 候必需要傳送。之前沒有注意到wa了非常多遍。並且在初始的時候能夠對地圖進行一下處理,這種肯定 是不能夠走的,所以能夠把他們都變成...