POJ1562 Oil Deposits (比较水的dfs)
2017-08-07 12:02
323 查看
#题目大意:出现一个油田,其周围八个位置(不是上下左右)只要有油田,就被认为是一块连通的油田,求连通油田的个数。
#include<iostream> #include<cstdio> using namespace std; char oil[105][105]; //油田 int arry[8][2] = {{1,0},{-1,0},{0,1},{0,-1},{1,1},{1,-1},{-1,1},{-1,-1}};//往八个方向搜索 int m, n;//油田的行和列 void dfs(int x, int y){ oil[x][y] = '*'; //将遇到的 @ 变成 *,避免重复 for(int i = 0; i < 8; i++){ int tempx = x + arry[i][0]; int tempy = y + arry[i][1]; if(tempx >= 0 && tempx < m && tempy >=0 && tempy < n && oil[tempx][tempy] == '@' ) dfs(tempx, tempy); } } int main(){ while(scanf("%d %d", &m, &n) && m && n){ for(int i = 0; i < m; i++) scanf("%s",oil[i]); //字符数组一次输入一行,注意一下 int cnt = 0; for(int i = 0; i < m; i++){ for(int j = 0; j < n; j++){ if(oil[i][j] == '@'){ dfs(i,j); cnt++; } } } printf("%d\n",cnt); } return 0; }
相关文章推荐
- DFS:POJ1562-Oil Deposits(求连通块个数)
- HDU1241 POJ1562 UVa572 UVALive5317 Oil Deposits【DFS】
- POJ 1562 Oil Deposits (DFS)
- POJ 1562 Oil Deposits (HDU 1241 ZOJ 1562) DFS
- UVA572 HDU1241 POJ1562 Oil Deposits【DFS】
- POJ 1562 Oil Deposits (HDU 1241 ZOJ 1562) DFS
- zoj 1709 poj 1562 Oil Deposits【邻接阵,dfs】
- POJ 1562 Oil Deposits【DFS】&&ZOJ 1709
- POJ1562,Oil Deposits,dfs+bfs,这几天有做东西,没写博客= =
- poj 1562 Oil Deposits 简单dfs
- poj1562 Oil Deposits 简单搜索,dfs和bfs都行,我用的bfs
- POJ 1562 && ZOJ 1709 Oil Deposits(简单DFS)
- poj1562 Oil Deposits(DFS)
- poj入门水题--深度搜索(dfs)题 1011,含各种剪枝,比较经典
- POJ-1562 Oil Deposits
- poj 1562 Oil Deposits 广搜 (★☆☆☆☆)
- POJ 1562 Oil Deposits
- poj 1562 Oil Deposits(dfs)
- POJ 1562 Oil Deposits
- POJ 1562 Oil Deposits