#1471. 炸弹安置问题

炸弹安置问题

题目:炸弹安置问题

题目描述

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

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

  • 炸弹只能安装在陆地上
  • 每颗炸弹爆炸后,可以波及它所在的方格,以及相邻的上、下、左、右小方格;
  • 任意两颗炸弹爆炸后不能波及到同一个小方格。

如上图示:

图中,蓝色区域代表水域,绿色区域代表陆地: 安置炸弹的最优方案之一如图2所示; 炸弹波及的范围如图3所示(黑色区域); 这块 4x4 的矩形游戏场地最多可以波及到 11个小方格,其他方案都不会优于这个结果。

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

输入格式

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

接下来输入 N N 行,每行 M M 个字符(字符只可能是大写字母 AB):

  • A 表示水域;
  • B 表示陆地;

字符之间以一个空格隔开。

输出格式

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

样例输入

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

样例输出

11

说明:

将炸弹安放在图中最佳位置,可使其波及 11 个格子;
其他任何安放位置的波及范围都不会超过这个结果。

数据范围与约定

  • 4N100 4 \leq N \leq 100
  • 4M10 4 \leq M \leq 10