UVA Oil Deposits

题目如下:

Oil Deposits 

The GeoSurvComp geologic survey company is responsible for detectingunderground oil deposits. GeoSurvComp works with one large rectangularregion of land at a time, and createsa grid that divides the land into numerous square plots. It then analyzeseach plot
separately,using sensing equipment to determine whether or not the plot contains oil.

A plot containingoil is called a pocket. If two pockets are adjacent, then they are part ofthe same oil deposit. Oildeposits can be quite large and may contain numerous pockets. Your job is todetermine how many different oil deposits are contained in a grid.

Input

The input file contains one or more grids. Each grid begins with a linecontaining
m and n, thenumber of rows and columns in the grid, separated by a single space. Ifm = 0 it signals the endof the input; otherwise
and
.Followingthis are
m lines of n characterseach (not counting the end-of-line characters). Each character corresponds toone plot, and iseither `*‘, representing the absence of oil, or `@‘, representing an oil pocket.

Output

For each grid, output the number of distinct oil deposits. Two differentpockets are part of thesame oil deposit if they are adjacent horizontally, vertically, or diagonally.An oil deposit will not contain more than 100 pockets.

Sample Input

1 1
*
3 5
*@*@*
**@**
*@*@*
1 8
@@****@*
5 5
****@
*@@*@
*@**@
@@@*@
@@**@
0 0

Sample Output

0
1
2
2

求连块的个数,图的深度优先搜索。

AC的代码如下:

UVA Oil Deposits,布布扣,bubuko.com

时间: 2024-10-07 19:37:56

UVA Oil Deposits的相关文章

UVA Oil Deposits (BFS)

 Oil Deposits  The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. GeoSurvComp works with one large rectangular region of land at a time, and creates a grid that divides the land into numerous square plots.

UVA - 572 - Oil Deposits (图的DFS!)

UVA - 572 Oil Deposits Time Limit: 3000MS   Memory Limit: Unknown   64bit IO Format: %lld & %llu Submit Status Description  Oil Deposits  The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. GeoSurvComp works

UVa 572 Oil Deposits(DFS)

 Oil Deposits  The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. GeoSurvComp works with one large rectangular region of land at a time, and creates a grid that divides the land into numerous square plots.

UVA 572 -- Oil Deposits(DFS求连通块+种子填充算法)

UVA 572 -- Oil Deposits(DFS求连通块) 图也有DFS和BFS遍历,由于DFS更好写,所以一般用DFS寻找连通块. 下述代码用一个二重循环来找到当前格子的相邻8个格子,也可用常量数组或者写8条DFS调用. 下述算法是:种子填充(floodfill) 两种连通区域 四连通区域:从区域内一点出发,可通过上.下.左.右四个方向的移动组合,在不越出区域的前提下,能到达区域内的任意像素 八连通区域:从区域内每一像素出发,可通过八个方向,即上.下.左.右.左上.右上.左下.右下移动的

UVa 572 - Oil Deposits【图DFS】

Oil Deposits The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. GeoSurvComp works with one large rectangular region of land at a time, and creates a grid that divides the land into numerous square plots. It

Uva 572 Oil Deposits

Oil Deposits Time Limit: 3000MS   Memory Limit: Unknown   64bit IO Format: %lld & %llu Submit Status Description The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. GeoSurvComp works with one large rectangul

UVa 572 Oil Deposits(DFS求8连通块)

题意  求n*m矩阵中'@'连通块的个数  两个'@'在一个九宫格内就属于一个连通块 最基础的DFS  遇到@就递归扫描周围8个并标记当前格子已访问  然后就得到答案了 #include<cstdio> using namespace std; const int N = 110; char mat[N][N]; int dfs(int r, int c) { if(mat[r][c] != '@') return 0; else { mat[r][c] = '*'; for(int i =

Oil Deposits hdu-1241 DFS

The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. GeoSurvComp works with one large rectangular region of land at a time, and creates a grid that divides the land into numerous square plots. It then analyze

HDU 1241 Oil Deposits(石油储藏)

p.MsoNormal { margin: 0pt; margin-bottom: .0001pt; text-align: justify; font-family: Calibri; font-size: 10.5000pt } h1 { margin-top: 5.0000pt; margin-bottom: 5.0000pt; text-align: center; font-family: 宋体; color: rgb(26,92,200); font-weight: bold; fo