描述
用乙個n*m的二維陣列表示地圖,1表示陸地,0代表海水,每一格都表示乙個1*1的區域。地圖中的格仔只能橫向或者縱向連線(不能對角連線),連線在一起的陸地稱作島嶼,同時整個地圖都被海水圍繞。假設給出的地圖中只會有乙個島嶼,並且島嶼中不會有湖(即不會有水被陸地包圍的情況出現)。請判斷所給定的二維地圖中島嶼的周長。
輸入第一行為n和m,表示地圖的大小(1<=n<=100, 1<=m<=100)。接下來n行,每行有m個數,分別描述每一格的數值。數值之間均用空格隔開。輸出只有一行,即島嶼的周長(正整數)。樣例輸入
3 4
1 1 1 0
0 1 0 0
1 1 0 0
樣例輸出
14
#include#includeint n,m;
int k=0;
int matrix[105][105];
int flag[105][105];
int step[4][2]=,,,};
int cnt=0;
void dfs(int x,int y)
if(tempx>=0&&tempx=0&&tempyelse}}
}int main()}}
flag[tempx][tempy]=1;
dfs(tempx,tempy);
printf("%d\n",cnt);
return 0;
}
DFS C011 島嶼最大周長(dfs)
給定乙個包含 0 和 1 的二維網格地圖,其中 1 表示陸地 0 表示水域。網格中的格仔水平和垂直方向相連 對角線方向不相連 整個網格被水完全包圍,但其中恰好有乙個島嶼 或者說,乙個或多個表示陸地的格仔相連組成的島嶼 島嶼中沒有 湖 湖 指水域在島嶼內部且不和島嶼周圍的水相連 格仔是邊長為 1 的正...
DFS專題 之 463 島嶼的周長
題目 給定乙個包含 0 和 1 的二維網格地圖,其中 1 表示陸地 0 表示水域。網格中的格仔水平和垂直方向相連 對角線方向不相連 整個網格被水完全包圍,但其中恰好有乙個島嶼 或者說,乙個或多個表示陸地的格仔相連組成的島嶼 島嶼中沒有 湖 湖 指水域在島嶼內部且不和島嶼周圍的水相連 格仔是邊長為 1...
DFS之北大百煉1724
dfs專題之北大百煉1724 先給出原始碼 ac include include include using namespace std int k,n,r 物件導向的思想 將路的資訊抽象為乙個結構體,然後儲存 struct road vector citymap 110 鄰接表。citymap i...