#include <bits/stdc++.h>
using namespace std;
int main(int argc, char const *argv[]) {
  long long n, h;
  cin >> n >> h;
  vector<long long> a(n), b(n);
  long long maxa = 0;
  for (int i = 0; i < n; i++) {
    cin >> a[i] >> b[i];
    maxa = max(a[i], maxa);
  }
  long long tmp = 0;
  long long cnt = 0;
  std::sort((b).begin(), (b).end(), greater<long long>());
  for (auto val : b) {
    if (maxa > val) break;
    tmp += val;
    cnt++;
    if (tmp >= h) {
      break;
    }
  }
  cnt += (h - tmp) / maxa;
  cnt += (h - tmp) % maxa == 0 ? 0 : 1;
  cout << cnt << endl;
  return 0;
}
