#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using sword = pair<ll, ll>;
int main() {
  long long n, h;
  cin >> n >> h;
  vector<sword> swords(n);
  for (auto &s : swords) cin >> s.first >> s.second;
  ll maxa = 0;
  for (auto s : swords) {
    maxa = max(maxa, s.first);
  }
  sort(swords.begin(), swords.end(),
       [](sword l, sword r) { return l.second > r.second; });
  auto count = 0;
  for (auto s : swords) {
    if (h <= 0) break;
    if (s.second > maxa) {
      h -= s.second;
      count++;
    } else {
      break;
    }
  }
  count += h / maxa + (h % maxa > 0 ? 1 : 0);
  cout << count << endl;
}
