#include <bits/stdc++.h>
using namespace std;
bool cmp(pair<long long, long long> a, pair<long long, long long> b) {
  if (a.first != a.first) return a.first < a.first;
  return a.second > b.second;
}
int main() {
  long long n, h;
  cin >> n >> h;
  pair<long long, long long> katana[n];
  for (long long i = 0; i < n; i++) {
    cin >> katana[i].first >> katana[i].second;
  }
  sort(katana, katana + n, cmp);
  long long ctx = 0;
  for (long long i = 0; i < n; i++) {
    if (i == n - 1) {
      long long x = (h / katana[i].first) + (h % katana[i].first);
      long long y = (h / katana[i].first);
      ctx = min(ctx + x, ctx + y);
    } else {
      h -= katana[i].second;
      ctx++;
    }
  }
  cout << ctx << endl;
}
