#include <bits/stdc++.h>
using namespace std;
long long int t;
long long int mx = 2 * 10000;
int32_t main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  t = 1;
  while (t--) {
    long long int n, m;
    cin >> n >> m;
    unordered_set<long long int> st;
    queue<pair<long long int, long long int>> q;
    q.push(make_pair(n, 0));
    st.insert(n);
    while (q.empty() == false) {
      long long int x = q.front().first;
      long long int y = q.front().second;
      q.pop();
      if (x == m) {
        cout << y << '\n';
        break;
      }
      if (st.find(2 * x) == st.end() && (2 * x) <= mx) {
        st.insert(2 * x);
        q.push(make_pair(2 * x, y + 1));
      }
      if (x - 1 > 0 && st.find(x - 1) == st.end()) {
        st.insert(x - 1);
        q.push(make_pair(x - 1, y + 1));
      }
    }
  }
  return 0;
}
