poj 2386 Lake Counting (BFS~)
来源:互联网 发布:bjd娃娃正版淘宝店 编辑:程序博客网 时间:2024/06/10 01:44
// 2012-05-28 水泡个数 p2386 bfs#include <iostream>#include <cstring>#include <cstdio>#include <cmath>#include <stack>#include <queue>#include <algorithm>#define Bug cout << "here\n";using namespace std;const int N = 105;struct Point { int x, y;};int n, m, ans;int d_x[] = {-1, -1, -1, 0, 0, 1, 1, 1};int d_y[] = {-1, 0, 1, -1, 1, -1, 0, 1};int map[N][N];bool ok(int a, int b) { if(0 <= a && a < n && 0 <= b && b < m && map[a][b] == 1) { return true; } return false;}queue<Point> Q;void bfs(int x, int y) { map[x][y] = 0; Point cur, nex; cur.x = x; cur.y = y; while(!Q.empty()) Q.pop(); Q.push(cur); while(!Q.empty()) { cur = Q.front(); Q.pop(); for(int i = 0; i < 8; i++) { nex.x = cur.x + d_x[i]; nex.y = cur.y + d_y[i]; if(ok(nex.x, nex.y)) { map[nex.x][nex.y] = 0; Q.push(nex); } } }}int main() { int i, j; char str[N]; scanf("%d%d", &n, &m); for(i = 0; i < n; i++) { scanf("%s", str); for(j = 0; j < m; j++) { if(str[j] == 'W') { map[i][j] = 1; } else map[i][j] = 0; } } ans = 0; for(i = 0; i < n; i++) { for(j = 0; j < m; j++) { if(map[i][j] == 1) { bfs(i, j); ans++; } } } printf("%d\n", ans); return 0;}
- poj 2386 Lake Counting (BFS~)
- POJ 2386 Lake Counting-------BFS
- 【BFS】-POJ-2386-Lake Counting
- Poj 2386 Lake Counting【Bfs】
- 【BFS】poj 2386 Lake Counting
- poj 2386Lake Counting(DFS, BFS)
- poj 2386Lake Counting(BFS搞定)
- poj 2386 Lake Counting 解题报告(BFS)
- POJ 2386 Lake Counting (DFS or BFS)
- POJ 2386 Lake Counting(dfs or bfs)
- POJ 2386 Lake Counting(BFS)
- 【poj】2386 Lake Counting bfs||dfs
- poj 2386 Lake Counting
- poj 2386 Lake Counting
- POJ 2386 Lake Counting
- poj 2386 Lake Counting
- poj 2386 Lake Counting
- poj 2386 Lake Counting
- s3c6410硬件NAND FLASH CONTROLLER(NAND FLASH 控制器)
- Hibernate核心思想—ORM机制(三)
- C++的namespace
- 把序列合并成字符串
- 【图的遍历】【最小生成树】【SCOI2012】滑雪与时间胶囊
- poj 2386 Lake Counting (BFS~)
- Xcode快捷键和使用技巧
- ios将摄像头捕获的视频数据转为jpeg格式
- 英语速学法
- find: paths must precede expression Usage: find [-H] [-L] [-P] [path...] [expression]
- dll文件的加载顺序
- 十五周任务(一)为应用程序增加周长
- chrome浏览器的快捷键
- ios学习--SQLite常用函数