#include <bits/stdc++.h>
using namespace std;
int main() {
  long long int N, H;
  cin >> N >> H;
  vector<pair<long long int, long long int> > A;
  vector<pair<long long int, long long int> > B;
  for (long long int i = 0; i < N; i++) {
    long long int a, b;
    cin >> a >> b;
    A.push_back(make_pair(a, 1));
    A.push_back(make_pair(b, -1));
  }
  sort(A.rbegin(), A.rend());
  long long int ans = 0;
  long long int b_sum = 0;
  long long int b_count = 0;
  long long int a_max = 0;
  for (long long int i = 0; i < A.size(); i++) {
    if (A[i].second == 1) {
      a_max = A[i].first;
      break;
    }
    b_sum += A[i].first;
    b_count++;
  }
  ans += max((long long int)0, (H - b_sum)) / a_max + b_count;
  long long int h = b_sum + a_max * (ans - b_count);
  if (H > h) {
    ans++;
  }
  cout << ans << endl;
}
