6_12 油田(UVa572)<图的连通块DFS>

有一家石油公司负责探勘某块地底下的石油含量,这块地是矩行的,并且为了探勘的方便被切割为许多小块。然后使用仪器对每个小块去探勘。含有石油的小块称为一个pocket。假如两个pocket相连,则这两个pocket属于同一个oil deposit。(所谓相连的定义与踩地雷游戏中的定义相同,请参考sample input,sample output)
你的任务就是要找出这块地包含几个不同的oil deposit。
Input
输入包含好几组数据,每组数据的第一行有2个整数m,n。m代表这块地的列数,n代表这块地的行数。(1<=m,n<=100),接下来的m行就是这块地探勘的内容。'@'代表此小块含石油,'*'代表此小块不含石油。m=0 n=0代表输入结束。
Output
对每组测试数据输出oil deposit的数目。

Sample input
1 1
*
3 5
*@*@*
**@**
*@*@*
1 8
@@****@*
5 5
****@
*@@*@
*@**@
@@@*@
@@**@
0 0

Sample Output
0
1
2
2

posted @ 2016-05-26 20:36  九江镇中  阅读(272)  评论(6编辑  收藏  举报