做題筆記 暴力搜尋(洛谷P1451 求細胞數量)

2021-09-26 02:15:06 字數 846 閱讀 6377

先放上這題的鏈結 p1451 求細胞數量

寫完這題想到我之前寫的題目都不是很記得了,決定在部落格寫乙個做題筆記,從這題開始將我做的每一題都寫乙個題解

所以,現在進入正題

這道題一看就知道,是dfs判斷連通塊

本來做這個題目是想練習dfs,但是由於dfs並不是很會,所以還是寫的暴力搜尋,可能是資料比較水,居然過了

我的思路很簡單,就是遞迴搜尋整個矩陣,尋找不為0的座標,找到就置為0,搜到邊界就返回,然後計數器加一

上**

#include#includeusing namespace std;

char a[100][100]; //存矩陣

int ans;

int n,m;

void sousuo(int x,int y)

if(a[x+1][y]!='0')

if(a[x-1][y]!='0')

if(a[x][y-1]!='0')

}int main()

} for(int i=1;i<=m;i++)

} }cout不會算時間複雜度,但是感覺如果資料狠一點就過不了,畢竟題目資料範圍矩陣最大100*100

如果各位想再次練習此類題目,可以戳下面的鏈結,練習另一道類似的題(其實就是推薦我的另一篇題解 )

ps:這裡再貼乙個題解裡看到的int陣列的矩陣輸入

for(c=1;c<=m;c++)

}

洛谷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。這樣子通過兩重迴圈就可以找到矩...

洛谷P1451 求細胞數量

洛谷p1451 求細胞數量 題目描述 一矩形陣列由數字0到9組成,數字1到9代表細胞,細胞的定義為沿細胞數字上下左右若還是細胞數字則為同一細胞,求給定矩形陣列的細胞個數。1 m,n 100 輸入格式 輸入 整數m,n m行,n列 矩陣輸出格式 輸出 細胞的個數 輸入輸出樣例 輸入 1 4 10 02...