Ctrl K

Скобки без пары

Средняя
Строка text состоит из строчных латинских букв и круглых скобок. Скобки в ней разбиваются на пары обычным образом: каждая ) закрывает ближайшую слева (, которая ещё не закрыта. Некоторым скобкам пары не достаётся: ), перед которой нет свободной (, и (, которую так никто и не закрыл. Удалите из строки все такие скобки и верните то, что осталось. Буквы и порядок символов не меняются. Получившаяся строка — правильная скобочная последовательность (если не смотреть на буквы), и удалено при этом наименьшее возможное число скобок.
Пример 1
text="f(o(o)b)a)r" → 'f(o(o)b)ar'

Последняя ) закрывает то, что не было открыто, — её убираем. Остальные скобки разбиты на пары.

Пример 2
text=")x(y" → 'xy'

У первой ) нет открывающей слева, у ( нет закрывающей справа — обе лишние.

Пример 3
text="((ab)" → '(ab)'

Вторая ( закрывается первой ), а первой ( пары не досталось.

Ограничения
  • 1 ≤ len(text) ≤ 10⁵
  • text состоит из строчных латинских букв и символов ( и )
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПричесать путь к папке СредняяКалькулятор на четыре действия СредняяКаждая буква по разу СредняяЗапись дерева с решётками СредняяДлина самого длинного пути к файлу Средняя
загружаем Python…
Вход
text="f(o(o)b)a)r"
Ожидается
'f(o(o)b)ar'

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 79 тестов на сервере, включая скрытые.