e-olymp
Задачі

К-ий максимум

К-ий максимум

Напишіть програму, яка реалізує структуру даних, що дозволяє додавати і видаляти елементи, а також знаходити k-ий максимум.

Вхідні дані

Перший рядок містить кількість команд n (n105). Наступні n рядків містять по одній команді кожна. Команду записано у вигляді двох чисел ci та ki - тип і аргумент команди відповідно (|ki| ≤ 109). Підтримувані команди:

  • +1: Додати елемент з ключем ki;
  • 0: Знайти і вивести ki-ий максимум;
  • -1: Видалити елемент з ключем ki.

Гарантується, що у процесі роботи в структурі не потрібно зберігати елементи з рівними ключами або видаляти неіснуючі елементи. Також гарантується, що при запиті ki-го максимуму, він існує.

Вихідні дані

Для кожної команди нульового типу у вихідний файл повинен бути виведений рядок, що містить єдине число - ki-ий максимум.

Ліміт часу 1 секунда
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
8
+1 5
+1 3
+1 7
0 2
-1 3
0 1
+1 10
0 3
Вихідні дані #1
5
7
5
Автор В.Гольдштейн
Джерело Зимние сборы в Харькове 2010 День 2