#include <bits/stdc++.h>
using namespace std;
int main() {
  long long int n, h;
  cin >> n >> h;
  std::vector<long long int> a(n), b(n);
  long long int i;
  for (i = 0; i < n; i++) cin >> a[i] >> b[i];
  sort(a.begin(), a.end());
  sort(b.begin(), b.end());
  if (n == 1) {
    h = (h - b[0]);
    cout << ceil((double)h / a[0]) + 1 << endl;
    return 0;
  }
  int ans = 0, j = n - 2;
  while (h > 0) {
    ans++;
    if (h <= b[n - 1]) break;
    if (b[j] > a[n - 1]) {
      h -= b[j];
      j--;
    } else {
      h -= a[n - 1];
    }
  }
  cout << ans << endl;
  return 0;
}
