Исправление кучи

Дана max-куча с n числами, в которой все элементы, кроме корня, уже удовлетворяют свойству max-кучи. Ваша задача — исправить кучу, чтобы все её элементы действительно соответствовали данному свойству.

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

В первой строке входных данных содержится целое число n (1 ≤ n ≤ 100 000).

Во второй строке приведены n чисел (), которые представляют значения элементов в куче.

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

Программа должна вывести n чисел, разделённых пробелами, представляющих исправленную кучу.

Примеры

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

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

7
-1 9 7 1 3 6 5

9 5 7 1 -1 6 3

8
-2 7 5 2 1 3 4 1

7 2 5 1 1 3 4 -2

Пояснение

profound.academy-Heap-3.1.drawio.png
Пример 1: слева показана исходная куча, справа — уже исправленная.

profound.academy-Heap-3.2.drawio.png
Пример 2: слева показана исходная куча, справа — исправленная.

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue