#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, h;
  cin >> n >> h;
  vector<int> a(n), b(n);
  int amax;
  int i;
  int ans = 0;
  for (i = 0; i < n; i++) {
    cin >> a[i] >> b[i];
  }
  amax = *max_element(a.begin(), a.end());
  sort(b.begin(), b.end());
  for (i = n - 1; i >= 0; i--) {
    if (b[i] < amax) break;
    h -= b[i];
    ans++;
    if (h < 0) {
      cout << ans << endl;
      return 0;
    }
  }
  ans += h / amax;
  if ((amax * (h / amax)) < h) ans++;
  cout << ans << endl;
}
