#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 分组改写上表。