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