#include<bits/stdc++.h>
using namespace std;

const int N = 100005;

int n, k, dp[N], ans = INT_MAX;

int main() {
	cin >> n >> k;
	dp[n] = 0;
	for (int i = n - 1; i >= 0; i--){
		dp[i] = dp[i + 1] + 1;
	}
	for (int i = n + 1; i <= N - 1; i++){
		int ans_w = dp[i - 1] + 1, ans_b = dp[i / 2] + 1;
		if (i % 2 != 0){
			ans_b = min(dp[(i + 1) / 2], dp[(i - 1) / 2]) + 2;
		}
		dp[i] = min(ans_w, ans_b);
		if (i >= k){
			ans = min(ans, dp[i] + i - k);
		}
	}
	cout << dp[k] << endl;
	return 0;
}