Moltiplica o Sottrai

Hai a disposizione due numeri: start s e target t. L’obiettivo è raggiungere t a partire da s, potendo soltanto raddoppiare (moltiplicare per 2) il numero corrente o sottrarre 1 da esso.
Qual è il numero minimo di operazioni necessario per passare da s a t?

Input

La prima riga dell’input contiene 2 interi s e t (1 ≤ s, t ≤ 10 000).

Output

Il programma deve stampare il numero minimo di operazioni per andare da s a t.

Esempi

Ingresso
Uscita
10 1
9
4 6
2

Spiegazione

  1. Sottrarre 1 da 10 per 9 volte
  1. 4 → 3 (sottrai 1) → 6 (moltiplica per 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