#include <bits/stdc++.h>
using namespace std;
const long long mod = 1000000007;
const long long INF = 1e+14;
const long double eps = 1e-8;
const long double pi = acos(-1.0);
void Yes() {
  cout << "Yes" << endl;
  exit(0);
}
void No() {
  cout << "No" << endl;
  exit(0);
}
int main() {
  long long N, H;
  cin >> N >> H;
  vector<long long> A;
  vector<long long> B;
  for (int i = 0; i < N; i++) {
    int a, b;
    cin >> a >> b;
    A.push_back(a);
    B.push_back(b);
  }
  sort(A.begin(), A.end());
  reverse(A.begin(), A.end());
  sort(B.begin(), B.end());
  reverse(B.begin(), B.end());
  long long amax = A[0];
  long long count = 0;
  for (int i = 0; i < N; i++) {
    if (B[i] > amax) {
      H -= B[i];
      count++;
      continue;
    } else
      break;
  }
  count += (H + (amax - 1)) / amax;
  cout << count << endl;
}
