#include<iostream>
#include<algorithm>
using namespace std;
using ll = long long;
ll n, h, a[1 << 17], b[1 << 17];
int main() {
	cin >> n >> h;
	for (int i = 0;i < n;i++)cin >> a[i] >> b[i];
	sort(a, a + n);
	sort(b, b + n);
	ll cnt = 0;
	for (int i = n - 1;i >= 0;i--) {
		if (b[i] < a[n - 1])break;
		cnt++;
		h -= b[i];//a[n-1]より大きいものを先に使う
		if (h <= 0)break;
	}
	cout << (cnt + (h > 0 ? (h + a[n - 1] - 1) / a[n - 1] : 0)) << endl;//真のときは足りてないとき
}