Контест Junior Стек и монотонный стек обновлено

Упростить путь в файловой системе

Условие

Дан абсолютный путь в Unix-стиле. Приведите его к каноническому виду:

  • путь начинается с одного /;
  • несколько / подряд считаются одним;
  • . означает текущий каталог и пропускается;
  • .. означает подняться на уровень выше; выше корня подняться нельзя, такой .. ничего не делает;
  • любое другое имя (в том числе ...) обычный каталог;
  • в конце нет /, если это не корень.

Ввод: одна строка длиной от 1 до 6·10⁴ из латинских букв, цифр, ., _ и /, первый символ /.

Вывод: канонический путь.

Пример 1

Ввод:

/home//user/./docs/../music/

Вывод:

/home/user/music

Пример 2

Ввод:

/../..

Вывод:

/

Решите в тренажёре

Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.

Термины по теме