#40920: C++詳解-BFS


toseanlin@gmail.com (Dr. SeanXD)

學校 : 不指定學校
編號 : 158065
來源 : [220.130.163.227]
最後登入時間 :
2025-07-30 21:23:37

收完資料之後一個一個字元做判斷,如果目前字元有石油,就跑 BFS。跑 BFS 的時候要跑「上、下、左、右、右上、右下、左上、左下」八個方位,並且不能跑到重複的點。可以宣告一個 Map 來存哪些點已經走過了,要注意的是這個 Map 可以設成全域變數,這樣子 BFS 結束後跑到已經走過的點就不會再進 BFS。每當一個 BFS 結束時就將答案+1。

 

範例程式碼