100 atcoder#ABC129D. [ABC129D] Lamp

[ABC129D] Lamp

题目描述

H H 行横 W W 列のグリッドが与えられます。このグリッドのうち、いくつかのマスには障害物が存在します。

すぬけ君は、障害物のないマスのうち一つを選び、そのマスに明かりを設置しようとしています。 設置されたマスから、上下左右の四方向にまっすぐに光線が伸びます。それぞれの方向について、最初に障害物が存在するマスにぶつかる、もしくはグリッドの端にぶつかる手前のマスまで照らされます。明かりを設置したマスも照らされますが、障害物が存在するマスは照らされません。

すぬけ君は明かりによって照らされるマスの個数を最大化したいです。

H H 個の長さ W W の文字列 Si S_i (1 < = i < = H 1\ <\ =\ i\ <\ =\ H ) が与えられます。Si S_i j j 文字目 (1 < = j < = W 1\ <\ =\ j\ <\ =\ W ) が # のとき、グリッドの上から i i 行目で左から j j 列目のマスには障害物があり、 . のときは障害物がありません。

照らされるマスの個数の最大値を求めてください。

输入格式

入力は以下の形式で標準入力から与えられる。

H H W W S1 S_1 : : SH S_H

输出格式

照らされるマスの個数の最大値を出力せよ。

题目大意

有一个 HHWW 列的字符矩阵。.表示空地,#表示障碍物。现在可以在.上放一盏灯,光线沿着上下左右传播,遇障碍物停止。问光线最多照亮几个空地。

4 6
#..#..
.....#
....#.
#.#...
8
8 8
..#...#.
....#...
##......
..###..#
...#..#.
##....#.
#...#...
###.#..#
13

提示

制約

  • 1 < = H < = 2,000 1\ <\ =\ H\ <\ =\ 2,000
  • 1 < = W < = 2,000 1\ <\ =\ W\ <\ =\ 2,000
  • Si S_i #. のみからなる長さ W W の文字列
  • Si S_i (1 < = i < = H 1\ <\ =\ i\ <\ =\ H ) のうちいずれかに . は最低 1 1 つ存在する

Sample Explanation 1

すぬけ君が上から 2 2 行目、左から 2 2 列目のマスに明かりを設置すると、上から 2 2 行目のうち左から 1 1 5 5 列目のマス、 左から 2 2 列目のうち上から 1 1 4 4 列目のマス全てが照らされ、全部で 8 8 マスです。