#include<bits/stdc++.h>
using namespace std;

int main() {
    int64_t n, h;
    cin >> n >> h;
    vector<int64_t> a(n), b(n);
    for (int64_t i = 0; i < n; i++) cin >> a[i] >> b[i];
    sort(rbegin(a), rend(a));
    sort(rbegin(b), rend(b));
    auto bor = upper_bound(rbegin(b), rend(b), a[0]).base();
    partial_sum(begin(b), bor, begin(b));
    auto itr = lower_bound(begin(b), bor, h);
    if (bor == itr) itr--;
    int64_t ans = itr - begin(b) + 1 + (max(h - *itr, 0l) + a[0] - 1l) / a[0];
    cout << ans << endl;
}
