#include <bits/stdc++.h>
int main() {
  std::cin.tie(0);
  std::cin.sync_with_stdio(false);
  size_t n;
  int X;
  std::cin >> n >> X;
  std::vector<std::pair<int, bool>> a(2 * n);
  for (size_t i = 0; i < n; i++) {
    int x, y;
    std::cin >> x >> y;
    a[2 * i] = {x, false};
    a[2 * i + 1] = {y, true};
  }
  std::sort(a.begin(), a.end());
  std::reverse(a.begin(), a.end());
  unsigned ret = 0;
  while (X > 0) {
    int x;
    bool flg;
    std::tie(x, flg) = a.front();
    if (flg) {
      a.erase(a.begin());
      X -= x;
      ret++;
    } else {
      ret += (X + x - 1) / x;
      break;
    }
  }
  std::cout << ret << std::endl;
  return 0;
}
