洛谷 P1451 求細胞數量 (BFS) 題解

2021-10-01 07:41:14 字數 777 閱讀 6072

洛谷 p1451

一矩形陣列由數字0到9組成,數字1到9代表細胞,細胞的定義為沿細胞數字上下左右若還是細胞數字則為同一細胞,求給定矩形陣列的細胞個數。(1<=m,n<=100)

輸入乙個整數 m , n ( m 行,n 列)的矩陣

輸出細胞的個數

輸入

4 10

0234500067

1034560500

2045600671

0000000089

輸出

4由於ta是粘在一起的,要把ta乙個乙個字元輸進來轉數字

出題人是無聊嗎,bt

找到乙個點(不為0)把跟ta連通的刪掉

人家還不能有朋友了

所求就是連通塊個數

我也不知道為什麼,我還只是個孩子

#include#includeusing namespace std;

char c;

int a[120][120],ans,n,m,h,t;

int fx[5]=,fy[5]=; // 4 個方向

struct cs[100100];

int main()

for (int i=1;i<=n;i++)

for (int j=1;j<=m;j++)

if (a[i][j]!=0) //此節點不為0,進去找連通塊

}}while(h}

cout

}

洛谷 P1451 求細胞數量(BFS)

一矩形陣列由數字0到9組成,數字1到9代表細胞,細胞的定義為沿細胞數字上下左右若還是細胞數字則為同一細胞,求給定矩形陣列的細胞個數。1 m,n 100 輸入 整數m,n m行,n列 輸出 細胞的個數 4 10 0234500067 1034560500 2045600671 0000000089 i...

洛谷P1451 求細胞數量

一矩形陣列由數字0到9組成,數字1到9代表細胞,細胞的定義為沿細胞數字上下左右若還是細胞數字則為同一細胞,求給定矩形陣列的細胞個數。1 m,n 100 輸入格式 輸入 整數m,n m行,n列 矩陣輸出格式 輸出 細胞的個數 輸入樣例 1 複製 4 10 0234500067 1034560500 2...

洛谷P1451 求細胞數量

一矩形陣列由數字0到9組成,數字1到9代表細胞,細胞的定義為沿細胞數字上下左右若還是細胞數字則為同一細胞,求給定矩形陣列的細胞個數。如上圖所示,該矩陣可以劃分為4個細胞。對該矩陣進行掃瞄,如果當前元素不為0,細胞個數加1,然後對其四個方向進行遞迴,然後將當前元素置為0。這樣子通過兩重迴圈就可以找到矩...