Минимальная перестановка
Минимальная перестановка
Дано натуральное число n и неотрицательные целые числа k_1, k_2, ..., k_n такие, что
k_1 + 2k_2 + ... + nk_n = n.
Требуется построить лексикографически минимальную перестановку чисел от 1 до n, у которой k_1 циклов длины 1, k_2 циклов длины 2, ..., k_n циклов длины n в ее разложении на непересекающиеся циклы. Перестановка x=(x_1, x_2, ..., x_n) лексикографически меньше перестановки y=(y_1, y_2, ..., y_n), если найдется такое i{1, 2, ..., n}, что x_j = y_j при 1 ≤ j < i и x_i < y_i.
Входные данные
В первой строке входного файла задано натуральное число n ≤ 10^5. Во второй строке заданы через пробел неотрицательные целые числа k_1, k_2, ..., k_n такие, что k_1+2k_2+...+nk_n=n.
Выходные данные
В единственную строку выходного файла выведите через пробел n чисел: элементы искомой перестановки.
Пример
5 2 0 1 0 0
1 2 4 5 3