這是一道經典的搜尋題,其實就是求其中連通塊的數目。
既可以用深搜,又能用廣搜。
下面放廣搜**。
#include #include#include#includeusing namespace std;
int fx[8] = ;
int fy[8] = ;//8個方向
int total = 0;
char gr[1000][1000];//輸入.和w
int vis[1000][1000], n, m;//vis是判斷有沒有走過
struct ms
t1,t2;//結構體 儲存點的位置
queueq;//廣搜之必備佇列
void bfs(int x1, int y1)}}
}int main()
}for (int i = 1; i <= n; i++)}}
cout << total;//輸出連通塊的數目
return 0;
}
下面是深搜**
#include#includeusing namespace std;
char gr[1000][1000];
bool vis[1000][1000];
int n, m;
int total = 0;
int fx[8] = ;
int fy[8] = ;//跟廣搜一樣,需要八個方向
void dfs(int x,int y) }}
int main()
} for (int i = 1; i <= n; i++)
}} cout << total;
}
洛谷 試題庫問題 網路流
傳送門 洛谷 試題庫問題 假設乙個試題庫中有n道試題。每道試題都標明了所屬類別。同一道題可能有多個類別屬性。現要從題庫中抽取m 道題組成試卷。並要求試卷包含指定型別的試題。試設計乙個滿足要求的組卷演算法。對於給定的組卷要求,計算滿足要求的組卷方案。第1行有2個正整數k和n 2 k 20,k n 10...
洛谷 P2763 試題庫問題
問題描述 假設乙個試題庫中有n道試題。每道試題都標明了所屬類別。同一道題可能有多個類別屬性。現要從題庫中抽取m 道題組成試卷。並要求試卷包含指定型別的試題。試設計乙個滿足要求的組卷演算法。程式設計任務 對於給定的組卷要求,計算滿足要求的組卷方案。輸入格式 第1行有2個正整數k和n 2 k 20,k ...
洛谷 P2763 試題庫問題
源點向每個試題連容量為1的邊,試題向試題型別連容量為1的邊,試題型別向匯點連容量為本型別所需題數的邊.跑最大流 include include include include include include define pd i i 2 1 i 1 i 1 using namespace std ...