#HX3090. DFS连通块问题题二:数数有几个湖

提交3 通过1
通过率33.3%
时间限制1000ms
内存限制128MiB
    ID: 12845 传统题 1000ms 128MiB 尝试: 3 已通过: 1 难度: 普及 上传者: 标签>C++c++编程题浩轩OJ迁移6级2025年寒假六级班题库

题目描述

题目描述

由于近期的降雨, 雨水汇集在农民约翰的田地不同的地方. 我们用一个N×M(1≤N≤100,1≤M≤100)网格图表示. 每个网格中有水('W') 或是旱地('.'). 一个网格与其周围的八个网格相连, 而一组相连的网格视为一个湖. 约翰想弄清楚他的田地已经形成了多少湖. 给出约翰田地的示意图, 确定当中有多少湖.

输入格式

输入共2行:

第1行,2个空格隔开的整数:N 和M.

第2行到第N+1行,每行M个字符, 每个字符是'W'或'.', 它们表示网格图中的一排. 字符之间没有空格.

输出格式

输出共1行:

第1行:1个整数,湖的个数.

输入样例 #1

10 12
W........WW.
.WWW.....WWW
....WW...WW.
.........WW.
.........W..
..W......W..
.W.W.....WW.
W.W.W.....W.
.W.W......W.
..W.......W.

输出样例 #1

3

输入样例 #2

1 1
.

输出样例 #2

0

输入样例 #3

1 100
..W.W.WWW.W.W.WWW..W...W..W.WW.W.WW....W.....WWW.WW.W...W.W...WW..WW...W.W..W.W..WWW.WWW.WW......WWW

输出样例 #3

28

数据范围与约定

1≤N,M≤100。