fun main(args: Array<String>) {
    val k = readLine()!!.toLong()
    var num = 0L
    var d = 1L
    for (i in 1..k) {
        val sumKeta = (num + d).toDouble() / sumKeta(num + d).toDouble()
        val sumKeta1 = (num + 10 * d).toDouble()  / sumKeta(num + 10 * d).toDouble()
        if (sumKeta > sumKeta1) d *= 10
        num += d
        println(num)
    }
}

fun sumKeta(num: Long): Int {
    val str = num.toString()
    var sum = 0
    str.forEach { sum += it.toString().toInt() }
    return sum
}