# coding : utf-8

K = int(input())

#Sunuke = [1, 2, 3, 4, 5, 6, 7, 8, 9]
Sunuke = [1, 2, 3, 4, 5, 6, 7, 8]

# 10以上は、最上位の位を除いた下の位全てが9の場合すぬけ数となる
if K <= len(Sunuke):
    for i in range(K):
        print(Sunuke[i])

else:
    # 見つけなければいけない残りのすぬけ数
    resi = K - len(Sunuke)
    # 最上位の桁数(0の場合1の位、1の場合10の位)
    digit = 1

    while resi > 0:
        # 最上位の位の数
        for i in range(1, 10):
            num = i * (10**digit) - 1
            Sunuke.append(num)

            resi -= 1
            # if resi == 0:
            #     break

        digit += 1


for i in range(K):
    print(Sunuke[i])