#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using vi = vector<int>;
using vll = vector<ll>;
int main() {
  int n, h;
  cin >> n >> h;
  priority_queue<int> qa, qb;
  for (int i = 0; i < (n); i++) {
    int a, b;
    cin >> a >> b;
    qa.push(a);
    qb.push(b);
  }
  int ans = 0;
  while (!qb.empty() and qa.top() < qb.top()) {
    h -= qb.top();
    qb.pop();
    ans++;
  }
  if (h > 0) ans += (h + qa.top() - 1) / qa.top();
  cout << ans << endl;
}
