#include <bits/stdc++.h>
using namespace std;
const double PI = acos(-1);
const int mod = 1e9 + 7;
int main() {
  int n;
  long long h;
  cin >> n >> h;
  vector<long long> a(n);
  vector<long long> b(n);
  for (long long i = 0; i < (n); ++i) cin >> a[i] >> b[i];
  sort(a.begin(), a.end());
  sort(b.begin(), b.end());
  int bmx = upper_bound(b.begin(), b.end(), a[n - 1]) - b.begin();
  long long lastd = 0;
  long long ans = 0;
  while (bmx != n) {
    lastd += b[bmx];
    ans++;
    bmx++;
  }
  h -= lastd;
  ans += ceil(h / a[n - 1]);
  cout << ans;
}
