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