Контест Middle Связные списки обновлено

Текстовый редактор с курсором

Условие

Простой редактор хранит строку и курсор, который стоит между символами (или в начале, или в конце). Изначально курсор в конце строки. Команды:

  • L: сдвинуть курсор на символ влево (в начале строки ничего не происходит);
  • R: сдвинуть вправо (в конце ничего не происходит);
  • D: удалить символ слева от курсора (если его нет, ничего не происходит);
  • P c: вставить символ c слева от курсора, курсор остаётся справа от вставленного.

Ввод: в первой строке исходная строка из строчных латинских букв длиной до 5000; пустая строка записана как -. Во второй q (1 ≤ q ≤ 10⁴), далее q команд.

Вывод: итоговая строка; если она пустая, выведите -.

Пример 1

Ввод:

abc
5
L
P x
L
L
D

Вывод:

bxc

Пример 2

Ввод:

-
3
D
P a
L

Вывод:

a

Как подойти

Подсказки: 2
  1. Вставка в середину строки стоит O(длины): нужна другая структура.
  2. Разделите текст курсором на два стека.

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

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