#include <bits/stdc++.h>
using namespace std;
const int Nmax = 200010;
long long max(long long a[], int N) {
  int max = 0;
  for (int i = 0; i < N; i++)
    if (max < a[i]) max = a[i];
  return max;
}
int main() {
  long long N, H, a[Nmax], b[Nmax], d = 0;
  cin >> N >> H;
  for (int i = 0; i < N; i++) cin >> a[i] >> b[i];
  int cnt = 0;
  long long M = max(a, N);
  for (int i = 0; i < N; i++) {
    if (M < b[i]) {
      d += b[i];
      cnt++;
    }
    if (d >= H) {
      cout << cnt << endl;
      return 0;
    }
  }
  for (;;) {
    d += M;
    cnt++;
    if (d >= H) {
      cout << cnt << endl;
      return 0;
    }
  }
  return 0;
}
