#4006. [GESP2503 四级] 荒地开垦

[GESP2503 四级] 荒地开垦

荒地开垦

题目描述

⼩杨有⼀⼤⽚荒地,可以表⽰为⼀个 ⾏ 列的⽹格图。 ⼩杨想要开垦这块荒地,但荒地中⼀些位置存在杂物,对于⼀块不存在杂物的荒地,该荒地可以开垦当且仅当其上 下左右四个⽅向相邻的格⼦均不存在杂物。 ⼩杨可以选择⾄多⼀个位置,清除该位置的杂物,移除杂物后该位置变为荒地。⼩杨想知道在清除⾄多⼀个位置的 杂物的情况下,最多能够开垦多少块荒地。

输入格式

第⼀⾏包含两个正整数 ,含义如题⾯所⽰。 之后 ⾏,每⾏包含⼀个长度为 且仅包含字符 . 和 # 的字符串。如果为 .,代表该位置为荒地,如果为 #, 代表该位置为杂物。

输出格式

输出⼀个整数,代表在清除⾄多⼀个位置的杂物的情况下,最多能够开垦的荒地块数。

样例输入 #1

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

样例输出 #1

11

样例解释 #1

移除第⼆⾏从左数第⼆块空地的杂物后: 1 ..... 2 ....# 3 ..... 第⼀⾏从左数前 块荒地,第⼆⾏从左数前 块荒地,第三⾏从左数前 块荒地,均可开垦, 。

数据范围

对于全部数据,保证有 。

知识点与难度

本题涉及的知识点从属于 GESP 4级,难度等级:⭐⭐⭐ 。


测试点分布

Subtask 分值 测试点编号 说明
0 10 1~2 样例
1 20 3~8 小规模 / 特殊性质
2 15 9~11 Hack
3 30 12~20 中大规模
4 25 21~25 随机回归

生测试数据后,按实际 subtask 分组改写上表。