問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!
盤面の情報とマスを '?' にする距離の個数 N, マスを '?' にするときの距離 l_i が与えられます。
現在プレイヤーのいるマスは '*' になっており、そのマスはプレイヤーの陣地です。
プレイヤーは次の操作をできなくなるまで続けます。
・ 現在の陣地から 1 マス移動することで到達できるマスをプレイヤーの陣地にして、'*' にする。
ただし、障害物( '#' )のマスは陣地にできない。また、プレイヤーの開始時の位置からの距離が l_i であるとき、'*' の代わりに '?' にする。
なお、はじめにプレイヤーのいるマスの開始時の位置からの距離は 0 とします。
H W N
S_0
...
S_(H-1)
l_1
...
l_N
H 行の出力
・ 操作後の盤面を H 行で出力してください。
T_0
...
T_(H-1)
すべてのテストケースにおいて、以下の条件をみたします。
・ 1 ≦ H , W , N ≦ 20
・ 0 ≦ l_i ≦ 100
・ S は W 文字の文字列
・ S の各文字は '.' または '*' または '#'
・ '*' のマスは1つ
3 3 2
*..
...
...
1
3
*?*
?*?
*?*
10 10 5
##*#####..
..........
.#.#......
##..#.....
#########.
..........
..........
##########
..........
..........
1
5
4
7
9
##*#####*?
**?**??*?*
?#*#??*?*?
##*?#*?*?*
#########*
**********
**********
##########
..........
..........