#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const int MOD = (int)1e9 + 7;
const int INF = (int)1e9 + 1;
const ll LINF = (long long)1e18 + 1;
int main() {
  cin.tie(0);
  ios::sync_with_stdio(false);
  ll N, H;
  std::cin >> N >> H;
  vector<ll> a(N), b(N);
  for (decltype(N) i = 0; i < N; i++) {
    std::cin >> a[i] >> b[i];
  }
  std::sort(b.begin(), b.end(), std::greater<decltype(b)::value_type>());
  ll max_a = *max_element(a.begin(), a.end());
  ll ans = 0;
  for (decltype(N) i = 0; i < N; i++) {
    if (max_a < b[i] && 0 < H) {
      H -= b[i];
      ans++;
    }
    if (H <= 0) break;
  }
  std::cout << (ll)(ans + ceil(H / (long double)max_a)) << std::endl;
  return 0;
}
