N, H = map(int, input().split())
AB = [list(map(int, input().split())) for _ in range(N)]

ab = sorted(AB)
strongest = ab[-1]

damage, count = 0, 0
for a, b in ab[:-1]:
	if strongest[0] < b:
		damage += b
		count += 1
		if H <= damage:
			print(count)
			exit()

zhp = H - damage
if strongest[0] < strongest[1]:
	zhp -= strongest[1]
	count += 1

count += zhp // strongest[0] + (0 != (zhp % strongest[0]))
print(count)
