#O3221. LQ.中级组.编程题.十四届.STEMA.05. 简易炸弹超人

LQ.中级组.编程题.十四届.STEMA.05. 简易炸弹超人

题目描述

有一块矩形游戏场地,场地被分成 N×M 的网格( 4 ≤ N ≤ 100 , 4 ≤ M ≤ 10 ),其中一部分小方格是水域,另一部分小方格是陆地。

为防御敌军攻击,玩家需要在游戏场地安置炸弹:

  1. 炸弹只能安置在陆地上;

  2. 每颗炸弹爆炸后,可以波及到炸弹所在的小方格,及相邻的上、下、左、右小方格;

  3. 任意两颗炸弹爆炸后不能波及到同一个小方格。

请帮助玩家计算出如何安置炸弹,可以使炸弹波及到的范围最大,输出最多可以波及到的小方格数量。

例如:

N = 4,M = 4,网格中水域和陆地的情况如图1所示:

img

图中,蓝色区域代表水域,绿色区域代表陆地;安置炸弹的最优方案之一如图 2 所示;炸弹波及的范围如图 3 所示(黑色区域)。

这块 4×4 的矩形游戏场地最多可以波及到 11 个小方格,其他方案都不会优于这个结果。

输入格式

第一行输入两个正整数 N 和 M( 4 ≤ N ≤ 100 ,4 ≤ M ≤ 10 ),分别表示网格的行数和列数,两个正整数之间以一个空格隔开

接下来输入 N 行,每行 M 个字符(字符只能是大写字母 A 或 B ),A 表示水域,B 表示陆地,字符之间以一个空格隔开

输出格式

输出一个整数,表示最多可以波及到的小方格数量

样例

4 4
B A A A
A B A B
B A B B 
A B A A

11