Aランクレベルアップメニュー】> 【へび】STEP: 6 時刻に伴う移動 (paizaランク A 相当) [難易度: 1777 ±14]

※リンク先へ移動するためには[paiza]へのログインが必要です。

問題文

へびがマップ上を移動していきます。
マップの行数 H と列数 W , 障害物を '#' で移動可能な場所を '.' で表した H 行 W 列のマップ S_1 ... S_H , 現在の座標 sy , sx , 方向転換の回数 N が与えられます。
続けて N 回の方向転換する時刻 t_1 ... t_N , 転換する向き d_1 ... d_N が与えられます。

へびははじめ、北を向いています。

時刻 0 から 99 までの間、へびは各時刻に次の行動を最大 100 回とります。

・ 方向転換をおこなう時刻の場合、指定の向きに方向転換したのち 1 マス身体を伸ばす。
・ そうでない時は移動が可能な場合に限り、今向いている方向に 1 マス身体を伸ばす。

各移動が可能であるということは、
「移動先のマスに障害物がない かつ 移動先がマップの範囲外でない」
ということを意味します。

各移動が可能である場合、各移動が終了した時の y , x 座標を出力してください。
移動が可能でない場合、"Stop" を出力して以降の移動を打ち切ってください。

なお、マスの座標系は左上端のマスの座標を ( y , x ) = ( 0 , 0 ) とし、
下方向が y 座標の正の向き、右方向が x 座標の正の向きとします。

入力値(例)
10 10 5 5 22
........#.
..........
..........
..........
#.........
..........
..........
........#.
..........
..........
0 L
3 R
4 L
7 L
10 R
12 R
21 L
24 L
26 R
28 R
35 L
36 R
41 R
44 R
62 L
63 L
72 L
81 L
85 R
90 R
92 R
98 R

出力値(例)
5 4
5 3
5 2
4 2
4 1
Stop

解答例

おすすめの記事
スポンサーリンク