百煉 12558 島嶼周長(dfs)

2021-08-21 07:48:28 字數 760 閱讀 6563

描述

用乙個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...