#include <bits/stdc++.h>
int main() {
  int a[100000], b[100000], N, H, tmp, i, j, num, val, amax;
  scanf("%d%d", &N, &H);
  for (i = 0; i < N; i++) {
    scanf(" %d%d", &a[i], &b[i]);
  }
  amax = 0;
  for (i = 0; i < N - 1; i++) {
    if (amax < a[i]) amax = a[i];
  }
  for (i = 0; i < N - 1; i++) {
    for (j = 0; j < N - i - 1; j++) {
      if (b[j] < b[j + 1]) {
        tmp = b[j];
        b[j] = b[j + 1];
        b[j + 1] = tmp;
      }
    }
  }
  num = 0;
  val = H;
  for (i = 0; i < N; i++) {
    if (b[i] > amax) {
      num++;
      val -= b[i];
      if (val <= 0) break;
    } else {
      break;
    }
  }
  if (val <= 0)
    printf("%d\n", num);
  else {
    if (val % amax)
      printf("%d\n", num + val / amax + 1);
    else
      printf("%d\n", num + val / amax);
  }
}
