сразу говорю, это неполное решение и за него дают не 100 а лишь да мало, но лучше чем ничего, на крайний случай если так и не найдешь толковое решение
from queue import PriorityQueue
d = {k: x for k, x in enumerate(map(int, input().split())) if x != 0}
q = PriorityQueue()
for x, k in d.items():
q.put((-k, x))
res = []
p_k, p_x = q.get()
res.append(p_x)
while q.qsize() != 0:
k, x = q.get()
res.append(x)
if p_k < -1:
q.put((p_k + 1, p_x))
p_k, p_x = (k, x)
print(*res[::-1], sep='')
Интерактивная программа - это компьютерная программа, для работы которой требуется взаимодействие с пользователем. Это взаимодействие может включать в себя ввод информации, изменение информации, управление информацией или иное манипулирование данными. Большинство программ являются интерактивными.
Примером таких программ может быть «Логика для малышей»,Baby Logics, Cifiri, «Развиваем память», Монтессори, "Веселые Картинки" — инструментальный пакет для создания и решения задач, связанных со сборкой на экране упорядоченного множества объектов текстовой и графической структуры и т. д.