10 #1550. 海域生态恢复计划

海域生态恢复计划

题目描述

小Z负责管理一片矩形海域,该海域可以表示为一个 nnmm 列的网格。每个格子可能是干净水域(用 . 表示)或污染区域(用 # 表示)。

小Z拥有一台特殊设备,可以清除至多一个污染区域,将其变为干净水域。一片干净水域能够恢复生态当且仅当它自身及上下左右四个方向相邻的格子均为干净水域。

小Z想知道,在使用这台设备后,最多能有多少片水域成功恢复生态。

输入格式

第一行包含两个正整数 nnmm,表示海域的行数和列数。
接下来 nn 行,每行包含一个长度为 mm 的字符串,表示海域的初始状态。

输出格式

输出一个整数,表示清除至多一个污染区域后,最多能恢复生态的水域数量。

输入输出样例

3 5
.....
.#..#
.....

11

样例解释

清除第二行第二个污染区域后,网格变为:

.....
....#
.....

恢复生态的水域位置:

  • 第一行前 4 个水域
  • 第二行前 3 个水域
  • 第三行前 4 个水域
    总数为 4+3+4=114 + 3 + 4 = 11

数据范围

对于所有测试数据,保证 1n,m10001 \leq n, m \leq 1000