Субота, 20.04.2024, 09:10
Гость

Мішатронік

Мобільна версія | Додати у вибране  | Мій профіль | Вихід | RSS |
Меню сайту
Наше опитування
Java чи С++
Всього відповідей: 2
Статистика

Онлайн всього: 1
Гостей: 1
Користувачів: 0


Вам даны пары чисел (aibi), Вам необходимо построить декартово дерево, такое что i-ая вершина имеет ключи (aibi), вершины с ключом ai образуют бинарное дерево поиска, а вершины с ключом bi образуют кучу.

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

В первой строке записано число N — количество пар. Далее следует N (1N50000) пар (aibi). Для всех пар aibi30000 ai=aj и bi=bj для всех i=j .

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

Если декартово дерево с таким набором ключей построить возможно, выведите в первой строке YES, в противном случае выведите NO. В случае ответа YES, выведите N строк, каждая из которых должна описывать вершину. Описание вершины состоит из трёх чисел: номер предка, номер левого сына и номер правого сына. Если у вершины отсутствует предок или какой-либо из сыновей, то выводите на его месте число 0.

Если подходящих деревьев несколько, выведите любое.

Примеры
входные данные
7
5 4
2 2
3 9
0 5
1 3
6 6
4 11
выходные данные
YES
2 3 6
0 5 1
1 0 7
5 0 0
2 4 0
1 0 0
3 0 0

 

 

Форма входа
Пошук
Друзі сайту
Календар
«  Квітень 2024  »
ПнВтСрЧтПтСбНд
1234567
891011121314
15161718192021
22232425262728
2930

Єдина Країна! Единая Страна!