#include <bits/stdc++.h>
using namespace std;
const long long maxn = 2e6;
const long long INF = 1e15;
const long long mod = 1e9 + 7;
const long double PI = 4 * atan((long double)1);
long long pw(long long a, long long b) {
  return (!b ? 1
             : (b & 1 ? a * pw(a * a % mod, b / 2) % mod
                      : pw(a * a % mod, b / 2) % mod));
}
long long n, k;
long long a[maxn];
long long mx;
set<long long> st;
long long maxa(long long a, long long b) { return (a >= b) ? a : b; }
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  cin >> n >> k;
  int cnt = 0;
  for (int i = 0; i < n; i++) {
    cin >> a[i];
    st.insert(a[i]);
  }
  while (!st.empty()) {
    auto x = *st.begin();
    if (k >= x - (x / 2)) {
      st.erase(x);
      k = maxa(x, k);
    } else {
      k *= 2;
      cnt++;
    }
  }
  cout << cnt;
  return (0);
}
