Problem Solving/Baekjoon
[백준] 11899 괄호 끼워넣기 - Data Structure / Java
graycode
2022. 11. 26. 19:31
• 문제 링크
11899번: 괄호 끼워넣기
첫 번째 줄에 S를 올바른 괄호열으로 만들기 위해 앞과 뒤에 붙여야 할 괄호의 최소 개수를 출력합니다. 불가능한 경우는 주어지지 않습니다.
www.acmicpc.net
• 풀이 과정
• 풀이 코드
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Stack;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
String input = br.readLine();
Stack<Character> stk = new Stack<>();
int cnt = 0;
for (int i = 0; i < input.length(); i++) {
char token = input.charAt(i);
if (token == '(')
stk.push(token);
else {
if (stk.empty())
cnt++;
else
stk.pop();
}
}
cnt += stk.size();
bw.write(String.valueOf(cnt));
bw.flush();
}
}