掛け算か減算か

2つの数値、開始値 s と目標値 t が与えられています。s から t に到達するには、「現在の数を2倍にする」か「1を引く」かの2種類の操作だけを使います。
このとき、s から t へ到達するための操作回数が最小になるようにするにはどうすればよいでしょうか。

入力

最初の行には、2つの整数 st (1 ≤ s, t ≤ 10 000) が与えられます。

出力

s から t まで到達するために必要な操作の最小回数を出力してください。

Examples

Input
Output
10 1
9
4 6
2

Explanation

  1. 10から1を引く操作を9回行う
  1. 4 → 3 (1を引く) → 6 (2倍にする)
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue