No.3657 Gathering Stones
問題文最終更新日: 2026-08-30 01:57:02
MMA Contest 022の他の問題:
問題文
sepa くんは、$N \times M$ の盤面を持っています。盤面上には石が置かれています。
盤面の状態は、$N$ 個の長さ $M$ の文字列 $S_1, S_2, \ldots, S_N$ で表されます。$S_{i,j}$ について、
- $S_{i,j}$ が
#のとき、上から $i$ 行目、左から $j$ 列目のマスに石が置かれています。 - $S_{i,j}$ が
.のとき、上から $i$ 行目、左から $j$ 列目のマスには石が置かれていません。
sepa くんは、これから以下の操作を順番に行います。
-
以下の操作を、どの石に対しても行えなくなるまで繰り返す
- 上から $i-1$ 行目、左から $j$ 列目のマスに石が置かれていない場合、上から $i$ 行目、左から $j$ 列目のマスにある石を、上から $i-1$ 行目、左から $j$ 列目のマスへ移動する
-
以下の操作を、どの石に対しても行えなくなるまで繰り返す
- 上から $i$ 行目、左から $j-1$ 列目のマスに石が置かれていない場合、上から $i$ 行目、左から $j$ 列目のマスにある石を、上から $i$ 行目、左から $j-1$ 列目のマスへ移動する
すべての操作を行った後の盤面を出力してください。
制約
- $1 \leq N, M \leq 100$
- $S_{i,j}$ は
.もしくは#のいずれか - $N$, $M$ は整数
入力
$N\ M$ $S_1$ $S_2$ $\vdots$ $S_N$
出力
最後に改行してください。
サンプル
サンプル1
入力
2 2 .. .#
出力
#. ..
操作を行うごとに、盤面は以下のように変化します。
.. .# #.
.# .. ..
サンプル2
入力
3 4 #### #### ####
出力
#### #### ####
サンプル3
入力
16 64 ........########....########....########....########....######## .......#########...#########...#.......#...#.......#...######### .......#########...#########...#.......#...#.......#...######### ......##########..##########..#........#..#........#..########## ......##########..##########..#........#..#........#..########## .....###########.###########.#.........#.#.........#.########### .....###########.###########.#.........#.#.........#.########### ....#########################..##......##..##......############# ....#########################..##......##..##......############# ...####.###########.########..#.#.........#.#......####.######## ...####.###########.########..#.#.........#.#......####.######## ..####..##########..#######..#..#........#..#.....####..######## ..####..##########..#######..#..#........#..#.....############## .####...#########...######..#...#.......#...#....####..######### .####...#########...######..#...#.......#...#....####..######### ####....########....########....########....########....########
出力
################################################################ ###############################################################. #####################################################........... ####################################################............ ###########################################..................... ##########################################...................... #########################################....................... ########################################........................ ##############################.................................. #############################................................... ##########################...................................... #########################....................................... ########################........................................ ########################........................................ #######################......................................... #######################.........................................
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。
sepa38
くらげ