atcoder#ARC081D. [ARC081F] Flip and Rectangles

[ARC081F] Flip and Rectangles

配点 : 700700

問題文

H×WH \times W のマス目があります. マス目の各マスは黒か白かに塗られており,上から ii 番目,左から jj 番目のマスは,SiS_ijj 文字目が # のとき黒マス,. のとき白マスです.

すぬけ君は,マス目に対して次の操作を好きな回数行うことができます.

  • マス目の任意の行または列を選び,その行または列のすべてのマスの色を反転する (すなわち,黒で塗られたマスを白に,白で塗られたマスを黒に塗り替える).

操作の後,すぬけ君はマス目に沿った長方形を 11 個選びます.このとき,選んだ長方形に含まれるすべてのマスは黒で塗られていなければなりません.

うまく操作を行うとき,すぬけ君が選ぶことができる最大の長方形の面積を求めてください.

制約

  • 2H20002 \leq H \leq 2000
  • 2W20002 \leq W \leq 2000
  • Si=W|S_i| = W
  • SiS_i#, . のみからなる.

入力

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

HH WW

S1S_1

S2S_2

::

SHS_H

出力

すぬけ君が選ぶことができる最大の長方形の面積を出力せよ.

3 3
..#
##.
.#.
6

下図のように,上から 11 行目,左から 33 列目を反転させると,2×32 \times 3 の長方形を選ぶことができます.

4 4
....
....
....
....
16
10 8
##...#.#
##...#.#
..###.#.
#.##.#.#
.#..#.#.
..##.#.#
##.#.#..
...#.#..
###.#.##
###..###
27