#dwango2016finala. [dwango2016final_a]通勤

[dwango2016final_a]通勤

問題文

ニワンゴくんはdwango社のオフィスに通勤しています。家からオフィスまでの距離はNNメートルです。 ニワンゴくんは人間ではないので、通勤の方法も少し特殊です。

具体的には、以下の22つの手順を行いオフィスに向かいます:

  • オフィスに向かってLLメートル飛行する
  • LLの値をxx倍にする。ただし、xxはニコ数でなければならない。

この 22 つの手順は、好きな順番で、好きな回数だけ行うことができます。 ここで、ニコ数とは、1010進法で表すとそれぞれの桁が22または55からなる正整数で、隣り合う桁の数字が異なるような数のことです。例えば、2525,5,5252525, 5, 525はニコ数ですが、225,334,5255225, 334, 5255 はニコ数ではありません。

また、LLの値ははじめは11です。

ニワンゴくんは、通勤時間を減らすため、オフィスに向かって合計でちょうどNNメートル進むために必要な飛行回数の最小値を求めたいと思っています。 あなたの仕事は、ニワンゴくんに代わってこの最小値を求めるプログラムを書くことです。


入力

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

NN

  • 11 行目には、オフィスまでの距離を表す整数 N(1N1018)N(1 ≦ N ≦ 10^{18}) が与えられる。

部分点

この問題には部分点が設定されている。

  • N105N ≦ 10^5 を満たすデータセットに正解した場合、部分点として 3030 点が与えられる。
  • 追加の制約のないデータセットに正解した場合、部分点として追加で 5050 点が与えられる。合計で8080点となる。

出力

ニワンゴくんの飛行回数の最小値を 11 行に出力せよ。 出力の最後には改行を忘れないこと。


入力例1


3

出力例1


2

以下の方法で、飛行回数22回で33メートル進むことができます。11回以下で33メートル進む方法はありません。

  • 11メートル飛行する
  • LL22倍にする
  • 22メートル飛行する

入力例2


5

出力例2


1

入力例3


300

出力例3


2

入力例4


31

出力例4


3