Cкобочная грамматика

сложно

Дана строка s, представляющая выражение по скобочной грамматике:

  • (term)[n] — означает, что нужно повторить строку term n раз.
  • term может содержать строчные латинские буквы a-z, а также другие такие же конструкции (возможна вложенность).

Необходимо развернуть выражение и вернуть итоговую строку. Cкобочная структура всегда корректна.

Пример 1:

Ввод: s = "ab(cd)[2]"
Вывод: "abcdcd"

Пример 2:

Ввод: s = "x(yz)[3]w"
Вывод: "xyzyzyzw"

Пример 3:

Ввод: s = "a(b(c)[2])[3]"
Вывод: "abccbccbcc"

Ограничения:

  • len(s) >= 1
  • s содержит только символы латинского алфавита в нижнем регистре и числа