package yukicoder.no48 import kotlin.math.abs import kotlin.math.ceil /** * エントリポイント * @param args コマンドライン引数 */ fun main(args: Array) { val in1 = readLine() val in2 = readLine() val in3 = readLine() println(moveRobot(in1, in2, in3)) } /** * 目的地まで何命令で到達できるかを返します。 * @param eastWest 目的地の東西方向 * @param northSouth 目的地の南北方向 * @param maxDistance ロボットが1命令につき前進することができる最大の距離 */ fun moveRobot(eastWest: String?, northSouth: String?, maxDistance: String?): String { if (eastWest == null || northSouth == null || maxDistance == null) { return "" } var num = 0 val ew = eastWest.toDouble() val ns = northSouth.toDouble() val md = maxDistance.toInt() // 南北 if (ns < 0) { num += 2 num += abs(ceil(ns / md).toInt()) } else if (ns > 0) { num += abs(ceil(ns / md).toInt()) } // 東西 if (ew != 0.0) { num++ num += abs(ceil(ew / md).toInt()) } return num.toString() }