#include <bits/stdc++.h>
using namespace std;
const long MOD = 1000000007;
int main() {
  int N, H;
  cin >> N >> H;
  vector<pair<int, int> > v;
  for (int i = 0; i < N; i++) {
    int a, b;
    cin >> a >> b;
    v.push_back(pair<int, int>(a, i));
    v.push_back(pair<int, int>(b, N + i));
  }
  sort(v.begin(), v.end(), greater<pair<int, int> >());
  long long total = 0;
  int ind = 0;
  int cnt = 0;
  while (total <= H) {
    if (v[ind].second < N) {
      int rest = H - total;
      cnt += rest / v[ind].first;
      if (rest % v[ind].first != 0) cnt++;
      break;
    }
    total = total + v[ind].first;
    cnt++;
    ind++;
  }
  cout << cnt << endl;
  return 0;
}
