#include <bits/stdc++.h>
using namespace std;
bool cmp(long long a, long long b) { return a > b; }
int main() {
  long long a[100005];
  long long b[100005];
  long long N, H;
  long long x = 0;
  cin >> N >> H;
  long long bsum = 0;
  long long aindex;
  long long amax = 0, bmax = 0;
  for (long long i = 0; i < N; i++) {
    cin >> a[i] >> b[i];
    bsum += b[i];
    if (a[i] > amax) {
      aindex = i;
      amax = a[i];
    }
  }
  if (bsum >= H) {
    long long count = 0;
    sort(b, b + N, cmp);
    while (H > 0) {
      H -= b[count++];
      x++;
    }
    cout << x << endl;
  } else {
    long long i;
    int flag = 0;
    for (i = 0; i < N; i++) {
      if (b[i] > amax) {
        if (i == aindex) {
          flag = 1;
          continue;
        }
        H -= b[i];
        x++;
      }
    }
    while (H > 0) {
      H -= amax;
      x++;
      if (flag == 1) {
        if (H - b[aindex] <= 0) {
          x++;
          break;
        }
      }
    }
    cout << x << endl;
  }
  return 0;
}
