#W1007. 壬午号水稻田

壬午号水稻田

题目背景

在炎国的壬午号水稻田里,神农“黍”正在引导天师们进行最后的收割。然而,岁兽的碎片干扰了农田的生态,部分田块被污浊的淤泥(#)覆盖,而干净的水源(.)被切断。为了确保春耕的顺利进行,天师府需要查明这些淤泥块形成了多少个独立的污染区域(连通块)。

题目描述

给定一个 n×mn \times m (其中 n,m1000n, m \leq 1000) 的方格矩阵,表示壬午号水稻田的状态。

  • 字符 # 代表被淤泥覆盖的田块。
  • 字符 . 代表干净的水源。

如果两个 # 田块在水平或垂直方向上相邻,则认为它们属于同一个连通块。请你计算矩阵中总共有多少个由 # 构成的连通块。

输入格式

第一行输入两个整数 nnmm,表示水稻田的行数和列数。 接下来 nn 行,每行包含一个长度为 mm 的字符串,字符串仅由 .# 组成。

输出格式

输出一个整数,表示连通块的数量。

样例

4 5
..#..
.##..
#....
...##

3

样例解释

在样例 1 中:

  1. 左上角的两个 # 连在一起,形成第 1 个连通块。
  2. 第三行第一个 # 孤立存在,形成第 2 个连通块。
  3. 右下角的两个 # 连在一起,形成第 3 个连通块。 总计 3 个。