Исправляем последовательность скобок

Дана строка s, состоящая из открывающих и закрывающих скобок. Разрешается заменить некоторые открывающие скобки на закрывающие и наоборот. Какое минимальное количество таких преобразований необходимо, чтобы получить корректную скобочную последовательность?

Входные данные

В единственной строке задаётся строка s (1 ≤ |s| ≤ ). Гарантируется, что длина s чётна.

Выходные данные

Программа должна вывести минимальное количество изменений, необходимых для преобразования последовательности в корректную.

Примеры

Входные данные
Выходные данные
()((
1
)(
2
()()
0
((()
1

Пояснение

  1. ()(( → ()() ⇒ 1 изменение
  1. )( → () ⇒ 2 изменения
  1. ()() ⇒ изменений не требуется
  1. ((() → ()() ⇒ 2 изменения
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue