題目描述:
給出乙個m*n的矩陣,矩陣中的元素為0或1.稱位置(x,y)與其上下左右四個位置是相鄰的。如果矩陣中有若干個1相鄰,則稱這些1構成了乙個塊。求給定矩陣中的塊數。
輸入:0 1 1 1 0 0 1
0 0 1 0 0 0 0
0 0 0 0 1 0 0
0 0 0 1 1 1 0
1 1 1 0 1 0 0
1 1 1 1 0 0 0
輸出:4
#include #include#includeusing namespace std;
const int maxn=100;
struct nodenode;
int n,m;//矩陣的大小為n*m
int matrix[maxn][maxn]; //01矩陣
bool inq[maxn][maxn]=;//記錄位置x,y是否入過隊
int x[4]=;//增量陣列
int y[4]=;
bool judge(int x,int y)
//bfs函式訪問位置x,y所在塊,將該塊所有1的inq都設定為true;
void bfs(int x,int y)
} }
} int main(){
scanf("%d%d",&n,&m);
for(int x=0;x
BFS 迷宮問題(求最短路)
題目 給定乙個大小為 n m 的迷宮。迷宮由通道和牆壁組成,每一步可以向鄰接的上下左右四格 的通道移動。請求出從起點到終點所需的最小步數。請注意,本題假定從起點一定可以移動 到終點。限制條件 bfs 迷宮問題自己寫 created by showlo on 2018 4 13.include inc...
迷宮問題bfs
迷宮問題 採用佇列的廣度優先遍歷 bfs 思想是從乙個頂點v0開始,輻射狀地優先遍歷其周圍較廣的區域 找到的解為最優解 include define m 8 define n 8 define maxsize 1000 typedef struct box typedef struct qutype...
迷宮問題BFS
the code 資料結構迷宮.cpp 定義控制台應用程式的入口點。include stdafx.h include include include include define n 4 定義迷宮為4 4 using namespace std struct pot 為記錄路徑的rec準備,座標 x...