#include <bits/stdc++.h>
using namespace std;
using ll = long long;
map<int, int> mpa, mpb;
priority_queue<pair<ll, ll>, vector<pair<ll, ll>>, greater<pair<ll, ll>>> pque;
int main() {
  ios::sync_with_stdio(false);
  cin.tie(NULL);
  int N;
  double H;
  cin >> N >> H;
  int a[N], b[N];
  for (int i = 0; i < N; i++) {
    cin >> a[i] >> b[i];
  }
  ll cnt = 0;
  sort(a, a + N);
  reverse(a, a + N);
  sort(b, b + N);
  reverse(b, b + N);
  bool flag = true;
  for (int i = 0; i < N; i++) {
    if (b[i] >= a[0]) {
      H -= b[i];
      cnt++;
    } else {
      cnt = cnt + ceil(H / a[0]);
      cout << cnt << endl;
      return 0;
    }
  }
  cnt = cnt + ceil(H / a[0]);
  cout << cnt << endl;
  return 0;
}
