페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#1718

괄호고치기 1s 128MB

문제

괄호로 구성된 문자열이 주어졌을 때, 가능한한 최소한의 수정을 통해서(괄호의 추가와 삭제는 할 수 없다.) 

올바른 괄호쌍을 만드는 프로그램을 작성하라.

괄호 문자는 '()', '[]', '{}' 3가지로 구성되어있다.

'(', '[', '{' 의 경우 괄호쌍을 열때 사용하며, ')', ']', '}' 의 경우 괄호쌍을 닫을 때 사용한다.

괄호 문자열은 다음의 규칙에 따라 구성되어진다.

빈 문자열도 올바른(well-formed) 괄호 문자열이다. s가 올바른 괄호 문자열이라면, (s), [s], {s} 역시 올바른 괄호 문자열이다. s와 t가 올바른 괄호 문자열이라면, 이 둘을 합친 st역시 괄호 문자열이다.(ts 역시 괄호 문자열이다.)

임의의 문자열이 입력 되었을 때 괄호문자를 바꾸어 올바른 괄호 문자열이 될 수 있는 최소 수정 횟수를 출력하시오.


입력

임의의 문자열이 입력되어진다. 문자열의 길이는 0부터 50까지로 제한한다. 또한 문자열의 길이는 항상 짝수길이를 유지한다. 문자열은 위에 언급한 괄호문자로 구성되어지며, 그외의 문자는 입력되어지지 않는다고 가정한다.


출력

주어진 괄호문자열이 올바른 괄호문자열이 되기 위한 최소 수정 횟수를 출력 하시오.


예제

([{}])()[]{}
0

로그인해야 코드를 작성할 수 있어요.