蒜頭君來到一座陌生的城市打工,他和幾個朋友合租乙個房子。房東給他們發來了戶型圖,這個房子非常大,而且布局很奇怪。具體來說,房子可以被看做乙個 n\times mn×m 的矩形,有牆壁的地方被標記為』#』,其他地方被標記為』.』。通過』.'連在一起的區域被稱作房間,現在蒜頭君想知道,一共有多少個房間。
輸入格式
第一行包含兩個整數,nn 和 mm。
接下來 nn 行,每行包含 mm 個字元描述房間的情況,只包含』#『和』.』。
輸出格式
輸出乙個整數,表示房間的個數。
輸出時每行末尾的多餘空格,不影響答案正確性
樣例輸入複製
3 3#.#
#.#.#.
樣例輸出複製
3本題利用bfs來計算連通塊的個數非常方便,是一道模板題,其中,bfs函式執行的次數就是連通塊的個數
//@author:hairu,wu
//@from:ahut
#include
#include
using
namespace std;
int n,m;
char maze[
5000][
5000];
bool visited[
5000][
5000];
struct point
;int go[
2]=;
void
bfs(
int x,
int y)
}return;}
intmain()
}int ans=0;
for(
int i=
0;i} cout
}
ps:手指恢復的好慢啊,單手寫**的感覺真難受。。。希望手快點好 計蒜客 蒜頭君回家(bfs)
蒜頭君要回家,但是他家的鑰匙在他的朋友花椰妹手裡,他要先從花椰妹手裡取得鑰匙才能回到家。花椰妹告訴他 你家的鑰匙被我複製了很多個,分別放在不同的地方。蒜頭君希望能盡快回到家中,他需要首先取得任意一把鑰匙,請你幫他計算出回家所需要的最短路程。蒜頭君生活的城市可以看做是乙個 n m 的網格,其中有道路有...
迷宮 二 計蒜客 BFS解法
題目 蒜頭君在你的幫助下終於逃出了迷宮,但是蒜頭君並沒有沉浸於喜悅之中,而是很快的又陷入了思考,從這個迷宮逃出的最少步數是多少呢?輸入格式 第一行輸入兩個整數 n 和 m,表示這是乙個 n m 的迷宮。接下來的輸入乙個 n 行 m 列的迷宮。其中 s 表示蒜頭君的位置,表示牆,蒜頭君無法通過,表示路...
計蒜客 蒜頭君回家 bfs
題目鏈結 bfs廣搜,從s到p 從t到p的所有求最小值輸出就好,需要注意的地方 採用了stl的map,map預設按key值排序,故當使用自定義結構體時,應當在結構體內重構比較運算子,一開始只是簡單比較了point的x值,後來插入有誤,檢查後發現當x值相等時便覆蓋了相同x值的對映 採用的point結構...