100 atcoder#ABC107B. [ABC107B] Grid Compression

[ABC107B] Grid Compression

配点 : 200200

問題文

HH 行、横 WW 列のマス目があります。 上から ii 行目、左から jj 列目のマスを (i,j)(i, j) と表します。 各マスは白または黒です。 マス目の配色は、HHWW 列の行列 (ai,j)(a_{i, j}) によって与えられます。 ai,ja_{i, j}. ならばマス (i,j)(i, j) は白であり、ai,ja_{i, j}# ならばマス (i,j)(i, j) は黒です。

すぬけ君はこのマス目を圧縮しようとしています。 そのために、白いマスのみからなる行または列が存在する間、次の操作を繰り返し行います。

  • 操作: 白いマスのみからなる行または列をひとつ任意に選び、その行または列を取り除いて空白を詰める。

各操作でどの行または列を選ぶかによらず、最終的なマス目は一意に定まることが示せます。 最終的なマス目を求めてください。

制約

  • 1H,W1001 \leq H, W \leq 100
  • ai,ja_{i, j}. または # である。
  • マス目全体で少なくともひとつは黒いマスが存在する。

入力

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

HH WW

a1,1...a1,Wa_{1, 1}...a_{1, W}

::

aH,1...aH,Wa_{H, 1}...a_{H, W}

出力

最終的なマス目を、入力と同様のフォーマットで出力せよ。 ただし、行数および列数は省くこと。 詳しくはサンプルを参照せよ。

4 4
##.#
....
##.#
.#.#
###
###
.##

元のマス目における第 22 行および第 33 列がそれぞれ取り除かれます。

3 3
#..
.#.
..#
#..
.#.
..#

白いマスのみからなる行または列が存在しないので、操作は行われません。

4 5
.....
.....
..#..
.....
#
7 6
......
....#.
.#....
..#...
..#...
......
.#..#.
..#
#..
.#.
.#.
#.#