#include <bits/stdc++.h>
using namespace std;
int dp[20000];
int main() {
  long long n, m;
  scanf("%lld %lld", &n, &m);
  long long x, ara1[n + 5];
  long long a, b;
  a = b = 0;
  int ia, ib;
  for (int i = 1; i <= n; i++) {
    scanf("%lld %lld", &x, &ara1[i]);
    if (a < x) {
      a = x;
      ia = i;
    }
    if (b < ara1[i]) {
      b = ara1[i];
      ib = i;
    }
  }
  if (a >= b) {
    cout << (int)ceil(m / (double)a);
  } else {
    int ans = 0;
    bool fl = 0;
    for (int i = 1; i <= n; i++) {
      if (i == ia) {
        if (a < ara1[i]) {
          fl = 1;
          continue;
        }
      }
      if (ara1[i] > a) {
        ans++;
        m -= ara1[i];
        if (m <= 0) {
          cout << ans << endl;
          return 0;
        }
      }
    }
    if (fl) {
      ans++;
      m -= ara1[ia];
    }
    if (m > 0) {
      ans += ceil(m / (double)a);
    }
    cout << ans << endl;
  }
}
