#include <iostream>
#include <queue>
using namespace std;

priority_queue<int> B;
int main() {
	int N, H, a, t, mx=0; cin >> N >> H;
	for(int i=0; i<N; ++i){
	    cin >> a >> t;
	    mx=max(mx, a);
	    B.push(t);
	}
	int ans=0;
	while(B.size()>0 && B.top()>mx){
	    H -= B.top();
	    B.pop();
	    ++ans;
	    if(H<=0){
	        cout << ans << endl;
	        return 0;
	    }
	}
	ans += (H+mx-1)/mx;
	cout << ans << endl;
	return 0;
}
