#include <bits/stdc++.h>
using namespace std;
int main() {
  long N;
  long H;
  int times = 0;
  long aMax = 0;
  cin >> N >> H;
  long a[100000], b[100000];
  for (int i = 0; i < N; i++) {
    cin >> a[i] >> b[i];
  }
  for (int j = 0; j < N; j++) {
    if (aMax < a[j]) {
      aMax = a[j];
    }
  }
  sort(b, b + N);
  for (int k = N; k >= 0; k--) {
    if (aMax < b[k]) {
      if (H > 0) {
        H -= b[k];
        cout << b[k] << '\n';
        times++;
      }
    }
  }
  while (H > 0) {
    H -= aMax;
    times++;
  }
  cout << times;
  return 0;
}
