一矩形陣列由數字0到9組成,數字1到9代表細胞,細胞的定義為沿細胞數字上下左右還是細胞數字則為同一細胞,求給定矩形陣列的細胞個數。如:陣列
0234500067
1034560500
2045600671
0000000089
有4個細胞。
輸入共m+1行第一行有兩個資料,分別表示總行數和總列數以下的m行,每行有n個0-9之間的數
細胞個數
40234500067
1034560500
2045600671
0000000089
這題一眼看像用dfs。迴圈過一遍,找到乙個不是0的就進去搜尋,把那一塊都變成0,ans++。等所有變成零之後結束。當然bfs也可以,但我沒有選用。
特別注意:輸入用的是字元不是數字,看到兩字元之間沒有空格了沒?!
#include
#include
using
namespace std;
int n,m,ans;
char a[
101]
[101];
int dx[5]
=;int dy[5]
=;void
dfs(
int x,
int y)}}
intmain()
}for
(int i=
1;i<=n;i++)}
} cout
}
細胞問題 ssl 2324
題意 description 一矩形陣列由數字0到9組成,數字1到9代表細胞,細胞的定義為沿細胞數字上下左右還是細胞數字則為同一細胞,求給定矩形陣列的細胞個數。如 陣列 0234500067 1034560500 2045600671 0000000089 有4個細胞。input 輸入共m 1行第一...
SSL ZYC 2324 細胞問題
題目大意 一矩形陣列由數字0到9組成,數字1到9代表細胞,細胞的定義為沿細胞數字上下左右還是細胞數字則為同一細胞,求給定矩形陣列的細胞個數。比如 一共有4個細胞。思路 這是一道bfs的題目,從a 1 1 搜到a n m 找到乙個細胞就把這個細胞和緊挨著的細胞清零,並計數。也就是說,每找到乙個細胞就進...
SSLOJ2324 細胞問題 P1451
一矩形陣列由數字0到9組成,數字1到9代表細胞,細胞的定義為沿細胞數字上下左右還是細胞數字則為同一細胞,求給定矩形陣列的細胞個數。如 陣列 有4個細胞。輸入共m 1行第一行有兩個資料,分別表示總行數和總列數以下的m行,每行有n個0 9之間的數 細胞個數 40234500067 1034560500 ...