第20429题 程序题
荒地开垦:计算至多清除1个杂物时最多可开垦的荒地数量

时间与内存限制

  • 时间限制:1.0 s
  • 内存限制:512.0 MB

题面描述

小杨有一大片荒地,可以表示为一个n行m列的网格图。 小杨想要开垦这块荒地,但荒地中一些位置存在杂物。对于一块不存在杂物的荒地,该荒地可以开垦当且仅当其上下左右四个方向相邻的格子均不存在杂物。 小杨可以选择至多一个位置,清除该位置的杂物,移除杂物后该位置变为荒地。求在清除至多一个位置的杂物的情况下,最多能够开垦多少块荒地。

输入格式

第一行包含两个正整数n,m,含义如题面所示。 之后n行,每行包含一个长度为m且仅包含字符.#的字符串:.代表该位置为荒地,#代表该位置为杂物。

输出格式

输出一个整数,代表最多可开垦的荒地块数。

样例

输入样例1

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

输出样例1

11

样例解释

移除第二行从左数第二块位置的杂物后: 第一行从左数前4块荒地、第二行从左数前3块荒地、第三行从左数前4块荒地均可开垦,总和为4+3+4=11。

数据范围

对于全部数据,保证1 ≤ n,m ≤ 1000。

编辑模式