結果
問題 | No.113 宝探し |
ユーザー |
|
提出日時 | 2018-01-06 11:22:48 |
言語 | PHP (843.2) |
結果 |
AC
|
実行時間 | 43 ms / 5,000 ms |
コード長 | 891 bytes |
コンパイル時間 | 2,452 ms |
コンパイル使用メモリ | 31,248 KB |
実行使用メモリ | 31,616 KB |
最終ジャッジ日時 | 2024-11-16 21:43:53 |
合計ジャッジ時間 | 2,171 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 23 |
コンパイルメッセージ
No syntax errors detected in Main.php
ソースコード
<?php $in = trim(fgets(STDIN)); $ns = 0; $ew = 0; try { // 入力文字の解析 // 立っている位置から東西南北に何メートル移動すればいいか計算します // 北行ってから南に行くような場合を考慮しましょう for ( $i = 0; $i < strlen($in); $i++ ) { switch ( $in[$i] ) { case 'N': $ns += 1; break; case 'S': $ns -= 1; break; case 'E': $ew += 1; break; case 'W': $ew -= 1; break; default: throw new Exception("想定しない入力文字を検知しました。"); break; } } // 東西南北の移動を絶対値にします $ns = abs($ns); $ew = abs($ew); // ユークリッド距離を求めます $di = sqrt(pow($ns, 2)+pow($ew, 2)); echo $di.PHP_EOL; } catch (Exception $e) { echo '0'.PHP_EOL; fprintf(STDERR, "実行時エラー: ".$e->getMessage().PHP_EOL); exit(1); }