下午要打工作室例賽,會考察搜尋內容,搜尋本來也忘得差不多了,於是想找點題練練手,正好昨天xbl在補很早之前牛客上的一道bfs題,於是今天寫了一下。、「他的**乃是乙個傳奇。他是亡靈天災的君王,是符文聖劍霜之哀傷的主人,是艾澤拉斯世界一切自由族類的大敵。
巫妖王是無與倫比的強大力量與極端冷酷的化身,他比寒冰更加寒冷的靈魂已經被他的巨集大計畫徹底吞噬。
在這個計畫中,他將毀滅世界上的全部生靈。
巫妖王-阿爾薩斯已經啟動了可能導致艾澤拉斯所有生靈毀滅的計畫,他的天災軍團和驅役亡靈的強大力量將橫掃整個世界。
我們可以將艾澤拉斯視為n∗m的矩陣,其中
s:寒冰王座,起點
t:暴風城,終點
∗:平原,天災軍團可以到達的地方
#:沼澤,天災軍團無法到達的地方
在地圖上存在著 k 個傳送門,借助傳送門,可以瞬間(不花費時間地)從傳送門的任一端到達另一端
天災軍團每小時可以向其周圍4個方向移動一格(上下左右),為了保證天災軍團隨時保持最高戰鬥力,巫妖王命令軍隊每行軍8小時,就原地休息1小時。
現在巫妖王率領他的天災軍團從s出發,問最快多久可以到達t?
輸入描述:
第1行兩個整數n,m (
1<= n, m<=
1000
, 且n,m不同時等於1
)第2到n+
1行每行含有m個字元,其中:
第n+2行有乙個整數k(0
<= k <=
10)隨後k行,每行包含4個整數x1,y1,x2,y2表示傳送門兩端的
座標(x1,y1)
,(x2,y2)(1
<= x1,x2 <= n ,1
<= y1,y2<= m)
(注意,傳送門也可以直接存在於s和t之間,同時,同乙個傳送門的兩
端可能在同乙個位置,但是乙個地點不可能有多個傳送門的一端)
輸出描述:
輸出僅一行,表示巫妖王到達暴風城的最短時間,如果無法到達,
則輸出-
1
這道題是乙個很顯然的bfs題,主要是增加了傳送門、休息時間這兩個點,不過還是有挺多的細節問題需要注意。不然也不會卡我近兩個小時
先看題目,講一下兩個點1.每行軍8小時休息一小時,也就是說每滿八小時要加一小時
。如果設不休息時的答案為ans,那麼休息時的答案就為ans=ans+ans/8,當然,如果在第k個8小時剛好抵達
,那就不需要休息了,ans還要減1。2.傳送門。這個傳送門沒有規定方向,所以是雙向傳送門,即可以從a端傳送到b端,也可以從b端傳送到a端。另外需要特別注意的是,傳送門的一端可能在沼澤地
。另外,使用過的傳送門是肯定不會二次使用的
,這裡可以思考一下。還有我覺得題目的傳送門座標越界了。。。
其它的差不多就是bfs模板了
上ac**:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using
namespace std;
#define ll long long
char mp[
1005][
1005];
int vis[
1005][
1005];
int cs[12]
[4];
int ans, flag;
int mov[4]
[2]=
;int sx, sy, ex, ey;
struct haha
a, b;
queue q;
intmain()
else
if(mp[i]
[j]==
't')
int k;
scanf
("%d"
,&k)
;for
(int i =
0; i < k; i++
)else
if(mp[cs[i][0
]][cs[i][1
]]=='#'
|| mp[cs[i][2
]][cs[i][3
]]=='#')}
for(
int i =
0; i < k; i++
)elseif(
(a.x == cs[i][2
]&& a.y == cs[i][3
])&&(ex == cs[i][0
]&& ey == cs[i][1
]))}
while
(!q.
empty()
)for
(int i =
0; i <
4; i++
)else
if(xx == cs[j][2
]&& yy == cs[j][3
])//同上
vis[xx]
[yy]=1
; b.x = xx;
b.y = yy;
b.step = a.step +1;
q.push
(b);}}
if(!flag)
//如果最後抵達
printf
("-1\n");
return0;
}
「巫妖王」襲來,工作遊戲何去何從
轉眼間最大的80 後已經30 歲了,這群社會主義紅旗下吃著肯德基長大的孩子們,不慌不忙的又碰上了pc 想web 遷徙的大變革時代,網路給他們帶來了許多,超速的新聞 風靡的娛樂八卦,網路電視,互動,聊天,當然還有最最紅火的 網路遊戲。記得我第一次玩是初三放假的時候,那個時候 傳奇 這款遊戲剛剛出來一年...
只有蠢貨才會拒絕巫妖王 寒冰王座
時間限制 1 sec 記憶體限制 128 mb 不死族的巫妖王發工資拉,死亡騎士拿到一張n元的鈔票 記住,只有一張鈔票 為了防止自己在戰鬥中頻繁的死掉,他決定給自己買一些道具,於是他來到了地精商店前.死亡騎士 我要買道具 地精商人 我們這裡有三種道具,血瓶150塊乙個,魔法藥200塊乙個,無敵藥水3...
魔獸世界「巫妖王之怒」的運營思考
作為乙個 魔獸世界 的老玩家,一直非常關心 巫妖王之怒 到底什麼時候能登陸中國市場。國服的玩家,早就已經鬱悶到以頭搶地了。雖然最近兩年幾乎沒有什麼正兒八經的時間可以上線,不過還是常常關心著這個社群的訊息。日前看到一篇新聞,九城與網易為魔獸世界而戰 大體上說的是今年6月九城與暴雪的運營合同行將到期,而...