def f(x):
    x_str = str(x)
    y = x / sum([int(c) for c in x_str])
    return y


def count_digit(value):
    return len(str(value))


def g(k):
    count = 0
    digit = 1
    while True:
        if digit < 4:
            for i in range(1, 9 + 1):
                print(str(i) + '9' * (digit - 1))
                count += 1
                if count == k:
                    exit(0)
        else:
            for i in range(10, 10 + 10 * (digit - 3)):
                print(str(i) + '9' * (digit - 2))
                count += 1
                if count == k:
                    exit(0)
            for i in range(19 + 10 * (digit - 3), 100, 10):
                print(str(i) + '9' * (digit - 2))
                count += 1
                if count == k:
                    exit(0)

        digit += 1


if __name__ == '__main__':
    k = int(input())
    g(k)

    # exit(0)
    # # k = int(input())
    # k = 1000000000000000 // 100000000
    # min_f = k + 2
    # min_i = k + 2
    # for i in range(k + 1, 0, -1):
    #     fi = f(i)
    #     if fi <= min_f:
    #         min_f = fi
    #         min_i = i
    #         print(min_i, min_f)
    #     # print(i, fi, min_i, min_f)
