Контейнеры для музея

Просмотр в формате PDF

Submit solution


Очки: 200
Ограничение по времени: 1.0s
Ограничение по памяти: 64M

Автор:
Problem types
Allowed languages
C++, Python

В музее цифровых артефактов готовят новую экспозицию. Для перевозки экспонатов используют специальные контейнеры прямоугольной формы. Для каждого контейнера известны его ширина и высота.

Один контейнер можно поместить в другой только в том случае, если обе его стороны строго меньше соответствующих сторон внешнего контейнера. Иначе говоря, контейнер размера (w1, h1) можно вложить в контейнер (w2, h2), если одновременно выполняются условия:

  • w1 < w2
  • h1 < h2

Разрешается выбирать контейнеры в любом порядке и строить из них цепочку вложений.

Требуется определить максимальное количество контейнеров, которое можно вложить друг в друга.

Входные данные

В первой строке записано одно целое число n — количество контейнеров.

В следующих n строках записано по два целых числа w_i и h_i — ширина и высота i-го контейнера.

Выходные данные

Выведите одно целое число — максимальное количество контейнеров, которое можно вложить друг в друга.

Ограничения

  • 1 ≤ n ≤ 200000
  • 1 ≤ w_i, h_i ≤ 10^9

Пример 1

Входные данные

4
5 4
6 4
6 7
2 3

Выходные данные

3

Пример 2

Входные данные

3
1 1
1 1
1 1

Выходные данные

1

Пример 3

Входные данные

6
2 2
3 3
4 4
5 3
5 5
6 6

Выходные данные

5

Пояснение

В первом примере можно выбрать цепочку:

(2, 3) -> (5, 4) -> (6, 7)

Её длина равна 3.

Во втором примере все контейнеры одинаковые, поэтому вложить один в другой нельзя. Можно взять только один контейнер.


Комментарии

Еще нет ни одного комментария.