深度搜尋 NYOJ42 水池數目

2021-06-22 00:50:56 字數 817 閱讀 3495

時間限制:

3000 ms  |  記憶體限制:

65535 kb

難度:4 描述

南陽理工學院校園裡有一些小河和一些湖泊,現在,我們把它們通一看成水池,假設有一張我們學校的某處的地圖,這個地圖上僅標識了此處是否是水池,現在,你的任務來了,請用計算機算出該地圖中共有幾個水池。

輸入第一行輸入乙個整數n,表示共有n組測試資料

每一組資料都是先輸入該地圖的行數m(0輸出

輸出該地圖中水池的個數。

要注意,每個水池的旁邊(上下左右四個位置)如果還是水池的話的話,它們可以看做是同乙個水池。

樣例輸入

2

3 41 0 0 0

0 0 1 1

1 1 1 0

5 51 1 1 1 0

0 0 1 0 1

0 0 0 0 0

1 1 1 0 0

0 0 1 1 1

樣例輸出

2

3

首先,選取任意為1的乙個點,然後對這個點賦值為0,然後對這個點的上下左右進行深搜並且賦值為0,依次類推。

等到所有的點賦值為0之後,得到的就是所有水池的數目

#include using namespace std;

char pos[100][100];

int n,m;

void dfs(int x, int y)

}cout<

水池數目 C 深度搜尋 C

校園裡有一些小河和一些湖泊,現在,我們把它們通一看成水池,假設有一張我們學校的某處的地圖,這個地圖上僅標識了此處是否是水池,現在,你的任務來了,請用計算機算出該地圖中共有幾個水池。輸入第一行輸入乙個整數n,表示共有n組測試資料 每一組資料都是先輸入該地圖的行數n 0輸出 輸出該地圖中水池的個數。要注...

NYOJ 水池數目(DFS)

描述 校園裡有一些小河和一些湖泊,現在,我們把它們通一看成水池,假設有一張我們學校的某處的地圖,這個地圖上僅標識了此處是否是水池,現在,你的任務來了,請用計算機算出該地圖中共有幾個水池。輸入 第一行輸入乙個整數n,表示共有n組測試資料 每一組資料都是先輸入該地圖的行數m 0 m 100 與列數n 0...

NYOJ 水池數目(BFS)

題目描述 南陽理工學院校園裡有一些小河和一些湖泊,現在,我們把它們通一看成水池,假設有一張我們學校的某處的地圖,這個地圖上僅標識了此處是否是水池,現在,你的任務來了,請用計算機算出該地圖中共有幾個水池。輸入第一行輸入乙個整數n,表示共有n組測試資料 每一組資料都是先輸入該地圖的行數m 0輸出 輸出該...