Для будівництва двомірної піраміди використовуються прямокутні блоки, кожен з яких характеризується шириною і висотою. Можна поставити один блок на інший, тільки якщо ширина верхнього блоку строго менше ширини нижнього. Самим нижнім в піраміді може бути блок будь-якої ширини.
По заданому набору блоків потрібно визначити найбільшу висоту піраміди, яку можна побудувати з них.
Формат вхідних даних
Вхідні дані – стандартне введення.
В першому рядку вхідних даних задається число ~N~ – кількість блоків ~(1≤N≤100000)~.
В наступних ~N~ рядках задаються пари цілих чисел ~w~ та ~h~ ~(1≤w,h≤100000)~ – ширина і висота блоку, відповідно.
Формат вихідних даних
У стандартний потік вивести ціле число – максимальна висота піраміди.
Приклад вхідних даних
3
3 1
2 2
3 3
Приклад вихідних даних
5
Пояснення. У наведеному прикладі піраміда буде складатися з двох блоків: нижнім буде блок з номером 3, а верхнім – блок з номером 2. Блок із номером 1 не можна використовувати для будівництва піраміди, тому що його ширина збігається з шириною нижнього блоку.
Коментарі