atcoder#ARC099B. [ABC101D] Snuke Numbers

[ABC101D] Snuke Numbers

题目描述

整数 n n に対して,n n を十進法で表したときの各桁の和を S(n) S(n) で表すことにします. たとえば,S(123) = 1 + 2 + 3 = 6 S(123)\ =\ 1\ +\ 2\ +\ 3\ =\ 6 です.

正の整数 n n であって,m > n m\ >\ n であるような任意の正の整数 m m に対して nS(n)  mS(m) \frac{n}{S(n)}\ \leq\ \frac{m}{S(m)} が成り立つようなものを, すぬけ数 と呼ぶことにします.

整数 K K が与えられたとき,すぬけ数を小さいほうから K K 個列挙してください.

输入格式

入力は以下の形式で標準入力から与えられる.

K K

输出格式

K K 行出力せよ.i i 行目には,i i 番目に小さいすぬけ数を出力せよ.

题目大意

定义函数 S(x)\rm S(x) 表示 xx 各个位上数字之和。求前 kk 个这样的 nn

$$\forall m>n,\frac{n}{\mathrm{S}(n)}\leq \frac{m}{\mathrm{S}(m)} $$

k1k\geq 1

10
1
2
3
4
5
6
7
8
9
19

提示

制約

  • 1  K 1\ \leq\ K
  • K K 番目のすぬけ数は 1015 10^{15} 以下