1. 문제 링크
2. 문제 및 입출력예제
3. 문제 풀이
큐를 이용해 여는 괄호가 나오면 큐에 넣고, 닫는 괄호가 나오면 큐에서 꺼낸다.
큐에서 꺼낼 때 큐가 비어있거나, 모든 문자열이 끝났는데 큐에 남아 있다면 VPS가 아니다.
4. 코드
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayDeque;
import java.util.Queue;
public class Main {
static char[][] map;
static int min;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int T = Integer.parseInt(br.readLine());
for(int t=0;t<T;t++) {
String str = br.readLine();
String result = "YES";
Queue<Character> queue = new ArrayDeque<>();
for(int i=0;i<str.length();i++) {
if(str.charAt(i)=='(') {
queue.offer('(');
}
else {
if(queue.isEmpty()) {
result = "NO";
break;
}
queue.poll();
}
}
if(!queue.isEmpty()) {
result = "NO";
}
sb.append(result).append("\n");
}
System.out.println(sb);
}
}
'ALGORITHM' 카테고리의 다른 글
백준 10282 해킹 (Java) (0) | 2023.04.09 |
---|---|
백준 1913 달팽이 (Java) (0) | 2023.04.08 |
백준 9205 맥주 마시면서 걸어가기 (Java) (0) | 2023.04.06 |
백준 1402 아무래도이문제는A번난이도인것같다 (Java) (0) | 2023.04.05 |
백준 13305 주유소 (Java) (0) | 2023.04.04 |