#include <bits/stdc++.h>
using namespace std;
int main() {
  int N, H;
  cin >> N >> H;
  vector<vector<int>> A(N, vector<int>(2));
  vector<vector<int>> B(N, vector<int>(2));
  for (int i = 0; i < N; i++) {
    cin >> A.at(i).at(0);
    A.at(i).at(1) = i;
    cin >> B.at(i).at(0);
    B.at(i).at(1) = i;
  }
  sort(A.begin(), A.end());
  sort(B.begin(), B.end());
  int cnt = 0;
  int x = N - 1;
  int y = N - 1;
  while (H > 0) {
    if (A.at(x).at(0) < B.at(y).at(0)) {
      if (y == 0 && H > B.at(y).at(0)) {
        H -= A.at(x).at(0);
        cnt++;
        continue;
      }
      H -= B.at(y).at(0);
      y--;
      cnt++;
    } else {
      cnt += (H + A.at(x).at(0) - 1) / A.at(x).at(0);
      H = 0;
    }
  }
  cout << cnt << endl;
}
