#include <bits/stdc++.h>
#define IOS ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
using ll = long long;
#define all(x) (x).begin(), (x).end()
#define rall(x) (x).rbegin(), (x).rend()
#define B(x) bitset<32>(x).to_ulong()
#define Bll(x) bitset<64>(x).to_ullong()
#define sz(x) (int)(x).size()
#define pb(x) push_back(x)
#define fi first
#define sec second
#define lb lower_bound
#define up upper_bound
#define endl '\n'
using namespace std;
int main() {
IOS;
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
// freopen("output.txt", "w", stdout);
#endif
int n,m,ans=0;cin>>n>>m;
if(m>n)
while(m>n) {
(m%2==0)?m>>=1:m++;
ans++;
}
if(n>m) ans+=n-m;
cout<<ans;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CgojZGVmaW5lIElPUyBpb3M6OnN5bmNfd2l0aF9zdGRpbygwKTsgY2luLnRpZSgwKTsgY291dC50aWUoMCk7CnVzaW5nIGxsID0gbG9uZyBsb25nOwojZGVmaW5lIGFsbCh4KSAoeCkuYmVnaW4oKSwgKHgpLmVuZCgpCiNkZWZpbmUgcmFsbCh4KSAoeCkucmJlZ2luKCksICh4KS5yZW5kKCkKI2RlZmluZSBCKHgpIGJpdHNldDwzMj4oeCkudG9fdWxvbmcoKQojZGVmaW5lIEJsbCh4KSBiaXRzZXQ8NjQ+KHgpLnRvX3VsbG9uZygpCiNkZWZpbmUgc3ooeCkgKGludCkoeCkuc2l6ZSgpCiNkZWZpbmUgcGIoeCkgcHVzaF9iYWNrKHgpCiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZWMgc2Vjb25kCiNkZWZpbmUgbGIgbG93ZXJfYm91bmQKI2RlZmluZSB1cCB1cHBlcl9ib3VuZAojZGVmaW5lIGVuZGwgJ1xuJyAKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBtYWluKCkgewogICAgSU9TOwogICAgI2lmbmRlZiBPTkxJTkVfSlVER0UKICAgICAgICBmcmVvcGVuKCJpbnB1dC50eHQiLCAiciIsIHN0ZGluKTsKICAgICAgICAvLyBmcmVvcGVuKCJvdXRwdXQudHh0IiwgInciLCBzdGRvdXQpOwogICAgI2VuZGlmCiAgICBpbnQgbixtLGFucz0wO2Npbj4+bj4+bTsKICAgIGlmKG0+bikgCiAgICAgICAgd2hpbGUobT5uKSB7CiAgICAgICAgICAgIChtJTI9PTApP20+Pj0xOm0rKzsKICAgICAgICAgICAgYW5zKys7CiAgICAgICAgfQogICAgaWYobj5tKSBhbnMrPW4tbTsKICAgIGNvdXQ8PGFuczsKICAgIHJldHVybiAwOwp9Cg==