#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main() {
  ll n, h;
  cin >> n >> h;
  ll a_max = 0;
  vector<vector<ll>> a(n, vector<ll>(2));
  for (int i = 0; i < n; i++) {
    cin >> a[i][1] >> a[i][0];
    a_max = max(a_max, a[i][1]);
  }
  sort(a.begin(), a.end());
  reverse(a.begin(), a.end());
  ll count = 0;
  for (int i = 0; i < n; i++) {
    if (a_max > a[i][0]) break;
    count++;
    h -= a[i][0];
    if (h < 0) {
      cout << count << endl;
      return 0;
    }
  }
  while (h > 0) {
    count++;
    h -= a_max;
  }
  cout << count << endl;
}
