

스택을 써도되고, 큐를 써도 되고 사실 안쓰고 count 변수 선언해도 별 상관은 없다.
한글자씩 순서대로 따져보면서 ( 가 나오면 스택에 쌓고, )가 나오면 스택에서 빼는데, 뺄 값이 없으면 NO를 출력, 완주하면 YES를 출력해준다. 출력값 대소문자 구분 못해서 한번 틀림.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Stack;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int t = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
for (int i=0; i<t; i++) {
String str = br.readLine();
boolean vps = true;
Stack <String> stack = new Stack<>();
for (int j=0; j<str.length(); j++) {
if (str.charAt(j)=='(') {
stack.push("(");
} else if (str.charAt(j)==')') {
if (stack.empty()) {
vps = false;
break;
} else {
stack.pop();
}
}
}
if (vps && stack.empty()) {
sb.append("YES\n");
} else {
sb.append("NO\n");
}
}
System.out.println(sb);
}
}'백준 문제풀이' 카테고리의 다른 글
| 1406. 에디터 (자바, Java) (0) | 2022.11.05 |
|---|---|
| 1874. 스택 수열 (자바, Java) (0) | 2022.11.05 |
| 9093. 단어 뒤집기 (자바, Java) (0) | 2022.11.05 |
| 10828. 스택 (자바, Java) (0) | 2022.11.05 |
| 2004. 조합 0의 개수 (0) | 2022.10.29 |