問題説明
124国が存在します。124国では10進数ではなく次のような124国ならではのルールで数字を表現します。
- 124国では自然数だけ存在します。
- 124国では全ての数字を表現するときは1,2,4だけ使います。
そのとき、自然数nがパラメータとして与えられる時のnを124国で使われる数字で変換した値を返すsolutionメソッドを作成してください。
条件
- nは500,000,000以下の自然数です。
入出力例
| 10進数 | 124国 | 10進数 | 124国 |
|---|---|---|---|
| 1 | 1 | 6 | 14 |
| 2 | 2 | 7 | 21 |
| 3 | 4 | 8 | 22 |
| 4 | 11 | 9 | 24 |
| 5 | 12 | 10 | 41 |
解説

- 7行目:nが0の場合は0なので、1以上からループします。
- 8行目:1,2,4のため、3で割り算を行い、余りを保存します。
- 12行目:Carryがあることで、-1をします。
- 20行目:順番にappendしていたので、返す時に逆転して返します。
他の人の解説

- 1,2,4を配列に持たせて処理を行いますね。
- 個人的にはループでの文字列結合はStringBuilderを使った方がパフォーマンス面でかなり早いと思います。nが500,000,000かもしれないので。
