printРайонно-городские командные соревнования

print3. Распаковка сообщения

Ограничения: время – 2s/4s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Некоторое сообщение, состоящее только из строчных латинских букв, для уменьшения размера было упаковано. Восстановление исходного сообщения должно осуществляться следующим образом: если в упакованном сообщении встречается символ '$', то в результат добавляется часть ранее распакованного сообщения, начиная с позиции после последнего встретившегося символа '#', либо с самого начала, если такого символа еще не встречалось. Напишите программу, выполняющую распаковку сообщения.
В первой строке входного файла содержится упакованное сообщение длиной до 50 символов, состоящая только из строчных латинских букв и символов '#' и '$'. Количество символов '$' в упакованном сообщение не более 10.
В выходной файл вывести распакованное сообщение.

Пример ввода

ab$c$d#mu$

Вывод для примера

ababcababcdmumu
loading