結果

問題 No.113 宝探し
ユーザー yo-kondo
提出日時 2018-03-25 19:20:59
言語 Kotlin
(2.1.0)
結果
AC  
実行時間 318 ms / 5,000 ms
コード長 754 bytes
コンパイル時間 11,815 ms
コンパイル使用メモリ 428,448 KB
実行使用メモリ 51,272 KB
最終ジャッジ日時 2024-11-16 21:53:26
合計ジャッジ時間 21,795 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 23
権限があれば一括ダウンロードができます
コンパイルメッセージ
Main.kt:9:10: warning: parameter 'args' is never used
fun main(args: Array<String>) {
         ^

ソースコード

diff #

package yukicoder.no113

import kotlin.math.pow
import kotlin.math.sqrt

/**
 * エントリポイント
 */
fun main(args: Array<String>) {
    val in1 = readLine()
    print(treasureHunt(in1))
}

/**
 * 宝までの最短距離を返します。
 * @param news 方角
 */
fun treasureHunt(news: String?): String {
    if (news == null) {
        return ""
    }

    // [0]:NS, [1]:EW
    val dir = arrayOf(0, 0)
    for (n in news) {
        when (n) {
            'N' -> dir[0]++
            'S' -> dir[0]--
            'E' -> dir[1]++
            'W' -> dir[1]--
        }
    }
    // 南東(NE)
    val ne = dir[0].toDouble().pow(2)
    // 北西(SW)
    val sw = dir[1].toDouble().pow(2)
    return String.format("%.5f", sqrt(ne + sw))
}
0