atcoder#ARC149F. [ARC149F] Rational Number System
[ARC149F] Rational Number System
配点 : 点
問題文
を有理数とし, を の分子, を の分母とします.つまり は正整数で かつ が成り立つとします.
正整数 の \boldsymbol{r} 進法展開 を,次の条件をすべて満たす整数列 のことと定義します.
- は 以上 以下の整数
任意の正整数 が唯一の 進法展開を持つことが証明できます.
正整数 が与えられます.ここで, は を満たします.
以下の正整数全体を, 進法展開の辞書順が小さい方から順に並べたとき, 番目に並ぶ正整数を答えてください.
なお,正整数の入出力には通常の 進法表記が用いられます.
数列の辞書順とは?
数列 が より辞書順で小さいとは,下記の 1. と 2. のどちらかが成り立つことを言います.ここで,, はそれぞれ , の長さを表します.
- かつ .
- ある整数 が存在して,下記の つがともに成り立つ.
- .
- .
制約
入力
入力は以下の形式で標準入力から与えられます.
出力
行出力してください. 行目には, 以下の正整数全体を, 進法展開の辞書順が小さい方から順に並べたとき, 番目に並ぶ正整数を出力してください.
正整数の出力には 進法表記を用いてください.
3 1 9 1 9
1
3
9
4
5
2
6
7
8
以下の正整数の 進法展開は次の通りです.
1: (1), 2: (2), 3: (1, 0),
4: (1, 1), 5: (1, 2), 6: (2, 0),
7: (2, 1), 8: (2, 2), 9: (1, 0, 0).
3 2 9 1 9
1
2
3
4
6
9
7
8
5
以下の正整数の 進法展開は次の通りです.
1: (1), 2: (2), 3: (2, 0),
4: (2, 1), 5: (2, 2), 6: (2, 1, 0),
7: (2, 1, 1), 8: (2, 1, 2), 9: (2, 1, 0, 0).
例えば の 進法展開が であることは,$2\cdot \bigl(\frac32\bigr)^2 + 1\cdot \frac32 + 0\cdot 1 = 6$ から分かります.
3 2 9 3 8
3
4
6
9
7
8
入力例 2 の出力のうち 番目から 番目が答となります.
10 9 1000000000000000000 123456789123456789 123456789123456799
806324968563249278
806324968563249279
725692471706924344
725692471706924345
725692471706924346
725692471706924347
725692471706924348
725692471706924349
653123224536231907
653123224536231908
653123224536231909