#include <bits/stdc++.h>
using namespace std;
signed main() {
  long n, h, maxk, thr, dthr;
  cin >> n >> h;
  vector<pair<long, long> > katana(n);
  for (long i = 0; i < n; ++i) cin >> katana[i].first >> katana[i].second;
  maxk = thr = dthr = 0;
  for (long i = 0; i < n; ++i) maxk = max(maxk, katana[i].first);
  for (long i = 0; i < n; ++i) {
    if (maxk < katana[i].second) {
      thr++;
      dthr += katana[i].second;
    }
  }
  cout << (h > dthr ? (h - dthr) / maxk + ((h - dthr) % maxk ? 1 : 0) + thr
                    : thr);
  return 0;
}
