湯圓 拯救計畫

2021-08-22 13:31:29 字數 1195 閱讀 4671

problem description

又到了湯圓星球一年一度的湯圓節了,但是大魔王卻過來把湯圓公主抓走了σ( ° △ °|||)︴

身為湯圓騎士的qaq蒟蒻自然而然的肩負著拯救湯圓的使命

qaq蒟蒻經歷了千辛萬苦(並沒有)之後,來到了大魔王的城堡,根據情報,湯圓公主就被大魔王放在城堡內,然後qaq蒟蒻發現自己是乙個路

痴,所幸的是他拿到了大魔王的城堡的地圖,而且在這上面標註了自己和湯圓公主的位置,那麼問題來了,聰明的你能幫他計算出需要多少單位

的時間來趕到湯圓公主的位置嗎?

ps:qaq蒟蒻每一次都可以移動到相鄰的非牆的格仔中,每次移動都要花費1個單位的時間

有公共邊的格仔定義為相鄰

input

一開始為乙個整數t代表一共有t組資料

每組測試資料的第一行有兩個整數n,m (2<=n,m<=300)

接下來的n行m列為大魔王的迷宮,其中

』#』為牆壁,『_『為地面

a代表qaq蒟蒻,o代表湯圓公主:

output

一組資料輸出乙個整數代表從qaq蒟蒻到湯圓的位置的最短時間

如果qaq蒟蒻不能到達湯圓的位置,輸出-1

sample input

2

3 3__a

_##__o

2 2a#

#o

sample output

6

-1

char 形map陣列,在輸入map時,考慮到要查詢湯圓的位置所在,沒有一行一行的輸入。

#includeusing namespace std;

int n,m,x,y;

char a[301][301];

int book[301][301];

struct sdut

h,t;

void bfs(int q,int w)

,,,};

memset(book,0,sizeof(book));

book[q][w]=1;

queueq;

h.x=q;

h.y=w;

h.time=0;

q.push(h);

while(!q.empty())}}

cout<<-1<>t;

while(t--)}}

bfs(x,y);

}}

湯圓 拯救計畫

problem description 又到了湯圓星球一年一度的湯圓節了,但是大魔王卻過來把湯圓公主抓走了 身為湯圓騎士的qaq蒟蒻自然而然的肩負著拯救湯圓的使命 qaq蒟蒻經歷了千辛萬苦 並沒有 之後,來到了大魔王的城堡,根據情報,湯圓公主就被大魔王放在城堡內,然後qaq蒟蒻發現自己是乙個路 痴,...

湯圓 拯救計畫

qaq蒟蒻每一次都可以移動到相鄰的非牆的格仔中,每次移動都要花費1個單位的時間 有公共邊的格仔定義為相鄰 input 一開始為乙個整數t代表一共有t組資料 每組測試資料的第一行有兩個整數n,m 2 n,m 300 接下來的n行m列為大魔王的迷宮,其中 為牆壁,為地面 a代表qaq蒟蒻,o代表湯圓公主...

湯圓 拯救計畫

湯圓 拯救計畫 time limit 1000ms memory limit 65536kb submit statistic problem description 又到了湯圓星球一年一度的湯圓節了,但是大魔王卻過來把湯圓公主抓走了 身為湯圓騎士的qaq蒟蒻自然而然的肩負著拯救湯圓的使命 qaq蒟...