No.642 Two Operations No.1

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 通常問題
タグ : / 解いたユーザー数 197
作問者 : PulmnPulmn / テスター : rullonzrullonz
3 ProblemId : 2110 / 出題時の順位表
問題文最終更新日: 2018-04-30 17:43:57

問題文

自然数 $N$ と整数 $X=1$ を持っており、次の $2$ つの操作を好きな順番で何回か行うことができます。$X=N$ にするために必要な操作回数の最小値を求めてください。ただし、不可能な場合は $-1$ を出力してください。

操作1:$X$ の値を $1$ 減らす
操作2:$X$ の値を $2$ 倍する

入力

$N$

$1\le N\le 10^9$

出力

$X=N$ にするための最小の操作回数を求めてください。不可能な場合は $-1
$ を出力してください。最後に改行してください。

サンプル

サンプル1
入力
3
出力
3

操作2 $\rightarrow$ 操作2 $\rightarrow$ 操作1 の順に操作を行うことで $X=N$ にすることができます。このときの $X$ の値は以下のように変化しています。
$1\rightarrow 2\rightarrow 4\rightarrow 3$

サンプル2
入力
1
出力
0

操作をする必要がない場合もあります。

サンプル3
入力
256
出力
8

操作2 を $8$ 回行うことで $X=N$ にすることができます。

提出ページヘ
下のフォームでの入力は、テキストボックスにフォーカスがない場合は、(Onにしている場合)ショートカットキー・スマートサブミットの影響を受けるので、必要なら提出ページに遷移してください。

言語
問題によって提出できない言語があります。参考
ソースコード
ソースコードのテキストボックスに文字がある場合はファイルは無視されます。
テキストボックスで提出するとCR(\r)が除去されますが、ファイルで提出すると除去されません。