// inputに入力データ全体が入る
function Main(input) {
	var line = input.split("\n");
	var tmp = line[0].split(" ");
	var numSword = Number(tmp[0]);
	var HP = Number(tmp[1]);
	var ans = 0;

	var throwDamage = [];
	var maxCutDamage = 0;
	for(var i = 1; i <= numSword; i++){
		throwDamage[i-1] = Number(line[i].split(" ")[1]);
		var cutDamage = Number(line[i].split(" ")[0]);
		if(maxCutDamage <= cutDamage) maxCutDamage = cutDamage;
	}

	throwDamage.sort(function(a,b){
		return b-a;
	});

	var sumThrowDamage = 0;
	var throwTimes = 0;

	for(i = 0; i < throwDamage.length && throwDamage[i] > maxCutDamage; i++){
		throwTimes++;
		sumThrowDamage += throwDamage[i];
		if(HP <= sumThrowDamage){
			console.log(throwTimes);
			return false;
		}
	}

	var cutTimes = Math.ceil((HP-sumThrowDamage)/maxCutDamage);
	ans = cutTimes + throwTimes;
	console.log(ans);
	return false;

}

//*この行以降は編集しないでください（標準入出力から一度に読み込み、Mainを呼び出します）
Main(require("fs").readFileSync("/dev/stdin", "utf8"));