【Aランクレベルアップメニュー】> 【座標系での向きの変わる移動】STEP: 2 座標系での移動・方角 (paizaランク C 相当) [難易度: 1515 ±10]
※リンク先へ移動するためには[paiza]へのログインが必要です。
開始時点の y , x 座標 と移動の回数 N が与えられます。
続く N 行で移動の方角 d_1 ... d_N が与えられるので、与えられた順に移動をしたときの各移動後の y , x 座標 を答えてください。
ただし、図の通り、上側( y 軸の負の向き)を北とします。
なお、マスの座標系は左上端のマスの座標を ( y , x ) = ( 0 , 0 ) とし、
下方向が y 座標の正の向き、右方向が x 座標の正の向きとします。
入力値(例)
0 0 1
N
出力値(例)
-1 0
解答例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<?php list($y, $x, $n) = explode(" ", trim(fgets(STDIN))); for ($i = 0; $i < $n; $i++) { $d = trim(fgets(STDIN)); if ($d == "N") { $y -= 1; } elseif ($d == "S") { $y += 1; } elseif ($d == "E") { $x += 1; } elseif ($d == "W") { $x += -1; } echo sprintf("%d %d\n", $y, $x); } ?> |