某石油公司發現了乙個油田。該油田由n*m個單元組成的矩形,有些單元裡有石油,有些則沒有。單元油田可以通過上,下,左或右連通。在乙個單元油田裡架設一台採油機,它可以把和該單元油田相連的單元油田的石油採完。該公司想知道最少需要架設幾台採油機能把所有的石油採完?
輸入
先輸入2個正整數n,m(1<=n,m<=50)。接著有n行,每行有m個字元。'@'表示該單元有石油,'*'則表示該單元沒有石油。
輸入到檔案結束。
輸出
對於每組測試,輸出最少需要架設幾台採油機。
樣例輸入
2 2@**@
2 2@@
@@樣例輸出2
1解題報告:
此題的程式用的是深度優先搜尋,開始設乙個變數many,表示找到了多少塊油田,初始值為0,接著可以從第一塊土地開始搜尋,當遇到沒有標號的油田時,用深度搜尋把與這塊油田相連的其他油田全部標號,並且many ++;當把整個地圖都全部掃瞄完畢後,最後只需要輸出many的值即可。
**實現:
#include#include#includechar s[55][55];
int map[55][55];
int dfs(int i,int j);//深度搜尋
int n,m,many;
int main()
搜尋 深度搜尋 廣度搜尋
迷宮 題目描述 一天extense在森林裡探險的時候不小心走入了乙個迷宮,迷宮可以看成是由n n的格點組成,每個格點只有2種狀態,和 前者表示可以通行後者表示不能通行。同時當extense處在某個格點時,他只能移動到東南西北 或者說上下左右 四個方向之一的相鄰格點上,extense想要從點a走到點b...
基礎演算法 深度優先搜尋
祝食用愉快xd 是一道胡亂出的題 u56815 來走迷宮鴨!深度優先搜尋,如果能不碰牆地到達右下角的出口,就把旗子立起來表示找到了出口。什麼?你沒聽過深度優先搜尋 沒事,且聽我道來。那,深度優先搜尋又是什麼呢?拿走迷宮這事兒說起。如果你玩過 mc 或者無論從哪個去掉了解走迷宮的時候用的 右手法則 那...
深度搜尋和廣度搜尋
這篇部落格很早之前就寫好了,但是一直沒有發出來。在進行詳細解說之前,我們需要先借用圖的概念,圖就是由一些小圓點 稱為頂點 和連線這些小圓點的直線 稱為邊 組成的。如下圖是由5個頂點 1,2,3,4,5 和5 條邊 1 2,1 2,1 4,2 5,3 4 組成的。現在我們從一號頂點開始遍歷這個圖,使用...