#LQB0040. 翻卡片

翻卡片

题目描述:

小蓝在玩翻卡片游戏,每张卡片一面写着大写字母“A”,另一面写着大写字母“B”。首先将卡片排成一个 NN 的矩阵。有的卡片是 A 面朝上,有的卡片是 B 面朝上。现给定 N 的值,及 NN 矩阵中每张卡片的状态,请你帮助小蓝挑选一张 B 面的卡,翻转成 A 面,使得翻转后的上、下、左、右四个方向相连的 A 面卡片最多,并将相连最多的卡片数量输出。
例如:N=3,3*3 的矩阵中的卡片状态如下:

选择红框内那张 B 面卡片,翻转为 A 面,可以使翻转后四个方向相连的 A 面卡片最多,为 5 张。

输入格式

第一行输入一个正整数 NN,表示矩阵的行数和列数。
接下来输入 NN 行,每行输入 NN 个字符(AB,以空格分隔),表示矩阵中每张卡片当前朝上的字母。

输出格式

输出一个整数,表示按最优方式翻转一张 B 卡后,包含该位置的 A 面连通块的最大大小。

样例输入输出

样例输入1

3
A B B
A B A
B A B

样例输出1

5

数据范围与测试点说明

  • 2N502\le N\le 50
  • 输入字符只可能为 AB

时间限制与内存限制

  • 时间限制:11
  • 内存限制:10241024 KiB