Детали
시간 제한2초메모리 제한1024 MB
각 부품의 가격이 [a_i, b_i] 범위에 있을 때, 어떤 가격 조합에도 정확히 지불할 수 있는 2의 거듭제곱 동전의 최소 개수를 구한다.
문제
После победы в очередной гонке, Молния Маккуин решил обновить покрышки и другие свои детали. Придя в магазин, Молния был обескуражен количеством различных товаров. Радостный, он бросился набирать себе в багажник всякие железные штучки. Но в один момент что-то начало тревожить гоночную машину. Это чувство тревоги не покидало Молнию пока, стоя в очереди в кассу, он не осознал, что забыл все свои гаечки дома. А без гаечек невозможно совершить покупку, ведь это главная валюта в Карбюраторном округе! Но Молния Маккуин решил не унывать. Он запомнил все цены на детали и поехал домой за гаечками.
Естественно, на момент прибытия домой, Молния почти все забыл. Единственное, что он помнил про каждую деталь --- диапазон цен, которому принадлежит истинная цена. Другими словами, про деталь с номером Молния знает, что ее стоимость не меньше чем и не больше чем гаечек. Гаечки в Карбюраторном округе бывают номиналом в условные единицы, где .
Маккуину стало интересно, какое минимальное количество гаечек нужно взять, чтобы можно было расплатиться за всю покупку без сдачи при любых стоимостях из указанных диапазонов. Поскольку Молния Маккуин очень успешный гонщик, можно считать, что гаечек каждого номинала у него неограниченно много.
입력
В первой строке входных данных дано число () --- количество покупок. Дальше следует строк. В -й строке даны числа , () --- диапазон стоимостей -й детали.
출력
Выведите минимальное число гаечек, которое нужно взять, чтобы расплатиться за всю покупку без сдачи при любых стоимостях из указанных диапазонов.