#include <bits/stdc++.h>
using namespace std;
struct aaa {
  aaa() {
    cin.tie(0);
    ios::sync_with_stdio(0);
    cout << fixed << setprecision(20);
  };
} aaaaaaa;
inline long long combi2(const long long n) { return n * (n - 1) / 2; }
int main() {
  long long n, h;
  cin >> n >> h;
  vector<long long> b(n);
  long long ma = LLONG_MIN;
  for (long long i = ((long long)0); i < ((long long)n); ++i) {
    long long a;
    cin >> a >> b[i];
    ma = max(ma, a);
  }
  sort((b).begin(), (b).end(), greater<int>());
  long long cnt = 0;
  for (cnt = 0; cnt < n && h > 0; cnt++) {
    if (b[cnt] > ma)
      h -= b[cnt];
    else
      break;
  }
  cout << cnt + ((h + ma - 1) / ma) << "\n";
  return 0;
}
