#include <bits/stdc++.h>
using namespace std;
int main() {
  cin.tie(0);
  ios::sync_with_stdio(false);
  long long N, H;
  cin >> N >> H;
  vector<pair<long long, long long>> weapons(N);
  long long maxNormal = 0, sumThrow = 0;
  for (int i = 0; i < N; ++i) {
    cin >> weapons[i].second >> weapons[i].first;
    maxNormal = max(maxNormal, weapons[i].second);
    sumThrow += weapons[i].first;
  }
  sort(weapons.begin(), weapons.end());
  long long res = 0;
  for (int i = N - 1; H > 0 and i >= 0; --i) {
    if (weapons[i].first > weapons[i].second) {
      H -= weapons[i].first;
      ++res;
    }
  }
  if (H > 0) {
    res += (H + (maxNormal - 1)) / maxNormal;
  }
  cout << res << "\n";
}
