#abc129d. [abc129_d]Lamp
[abc129_d]Lamp
题目描述
有一个 行 列的网格,其中某些方格上有障碍物。
Snuke 打算选择一个没有障碍物的方格,并在其上放置一盏灯。放置在方格上的灯会向四个基本方向(上、下、左、右)发射直线光束。在每个方向上,光束将继续前进,直到它碰到一个被障碍物占据的方格,或者它碰到网格的边界。光束将照亮途中的所有方格,包括放置灯的方格,但不包括被障碍物占据的方格。
Snuke 希望最大化被灯照亮的方格数。
给定 个字符串 (),每个字符串的长度为 。如果第 行(从顶部开始计数)第 列(从左侧开始计数)的字符()为 #
,则表示该方格上有一个障碍物;如果字符为 .
,则表示该方格上没有障碍物。
求能够被灯照亮的方格的最大可能数量。
约束条件
- 是一个长度为 的字符串,由
#
和.
构成。 - 在所有字符串 ()中至少有一个字符为
.
。
输入
从标准输入读入数据,输入格式如下:
输出
打印能够被灯照亮的方格的最大可能数量。
示例输入1
4 6
#..#..
.....#
....#.
#.#...
示例输出1
8
如果 Snuke 将灯放置在从顶部开始计数第二行、从左侧开始计数第二列的方格上,它将照亮以下方格:第二行从左到右的前五个方格,以及第二列从上到下的前四个方格,一共是八个方格。
示例输入2
8 8
..#...#.
....#...
##......
..###..#
...#..#.
##....#.
#...#...
###.#..#
示例输出2
13