D. [GESP202503 四级] 荒地开垦

    传统题 1000ms 256MiB

[GESP202503 四级] 荒地开垦

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目背景

2025 年 03 月 GESP C++ 四级编程第 1 题

题目描述

小杨有一大片荒地,可以表示为一个 nnmm 列的网格图。

小杨想要开垦这块荒地,但荒地中一些位置存在杂物,对于一块不存在杂物的荒地,该荒地可以开垦当且仅当其上下左右四个方向相邻的格子均不存在杂物。

小杨可以选择至多一个位置,清除该位置的杂物,移除杂物后该位置变为荒地。小杨想知道在清除至多一个位置的杂物的情况下,最多能够开垦多少块荒地。

输入格式

第一行包含两个正整数 n,mn, m,含义如题面所示。

之后 nn 行,每行包含一个长度为 mm 且仅包含字符 .# 的字符串。如果为 .,代表该位置为荒地;如果为 #,代表该位置为杂物。

输出格式

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

样例

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

样例解释

移除第二行从左数第二块空地的杂物后:

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

第一行从左数前 44 块荒地,第二行从左数前 33 块荒地,第三行从左数前 44 块荒地,均可开垦,4+3+4=114+3+4=11

数据范围

对于全部数据,有 1n,m10001\leq n,m\leq 1000

【语法周赛】M6W2

未参加
状态
已结束
规则
IOI(严格)
题目
4
开始于
2025-6-13 17:30
结束于
2025-6-22 21:30
持续时间
2 小时
主持人
参赛人数
17