Задача Physics. Є 𝑁 стовпчиків, утворених кубиками: 1-й стовпчик являє собою 𝑎1 поставлених один на іншого кубиків, 2-й — 𝑎2 кубиків, тощо. Усi цi кубики однакові. Все це разом узяте акуратно нахиляють праворуч — так, що деякі з кубиків зісковзують зі своїх стовпчиків i сповзають у правіші:
Вважаємо, що кубики не можуть обертатися навколо своїх ребер чи «провалюватися», тобто кубики не перекидаються, а лише зміщуються на правіші позиції. Напишіть програму, яка за початковою конфігурацією кубиків знаходитиме кінцеву, тобто кількість кубиків у кожному стовпчику та кількість кубиків у кожному рядку після того, як процес припиниться).
Технічні умови. Програма Physics читає з пристрою стандартного введення (клавіатури) число 𝑁 (2 <= 𝑁 <= 123456) - кількість стовпчиків, далі в тому ж рядку через пропуски 𝑁 натуральних чисел 𝑎1, 𝑎2, . . . , 𝑎𝑁 — кількість кубиків 1-му, 2-му, . . . , 𝑁-му стовпчиках (злiва направо). Кожне з цих чисел у межах 1 ≤ 𝑎i ≤ 123456. Програма виводить на пристрій стандартного виведення (екран) в одному рядку через пропуски кінцеві кількості кубиків по стовпчиках (зліва направо) і кінцеві кількості кубиків по рядках (усім непорожнім, знизу догори). Ні кількість стовпчиків, ні кількість рядків виводити не треба.
Приклади:
Введення
4 3 2 1 2 |
Виведення
1 2 2 3 4 3 1 |
(цей приклад відповідає рисунку) |
Введення
7 4 1 1 1 2 1 1 |
Виведення
1 1 1 1 1 2 4 7 2 1 1 |
|
|