package yukicoder.no135 /** * エントリポイント */ fun main(args: Array) { val in1 = readLine() val in2 = readLine() print(minimumDistance(in1, in2)) } /** * 座標間の最小距離を返します。 * @param num 座標の数 * @param distance 座標 */ fun minimumDistance(@Suppress("UNUSED_PARAMETER") num: String?, distance: String?): String { if (distance == null) { return "0" } val list = distance.split(" ").map { it.toInt() }.sorted() // すべて0の場合 if (list.none { it != 0 }) { return "0" } var min = Int.MAX_VALUE for (i in 0..(list.size - 2)) { // 同じ値は無視 if (list[i + 1] == list[i]) { continue } val m = list[i + 1] - list[i] if (min > m) { min = m } } return min.toString() }