Ctrl K

Скобки с двойным закрытием

Средняя
В одной разметке открывающая скобка — это символ (, а закрывающая — **два символа )) подряд**. Строка правильная, если каждую ( можно сопоставить своей паре )), стоящей правее, и каждый символ ) входит ровно в одну такую пару. Например, "())", "(())))" и "())(())))" правильные, а ")()", "()))" и "(()))" — нет. Дана строка text из символов ( и ). В любые места можно вставлять символы ( и ). Верните наименьшее число вставок, после которых строка станет правильной.
Пример 1
text="(()" → 3

Внутренней ( не хватает одной ), а внешней — двух: «(())))», три вставки.

Пример 2
text="())))" → 1

Первая пара )) закрывает (, а второй паре нужна своя (: «())(())», одна вставка.

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

Одинокой ) нужны ( перед ней и ) после неё, а двум ( в конце — ещё четыре ): всего 6.

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

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