본문 바로가기
백준

백준 스택 - 9012번 : 괄호

by 맴썰 2022. 3. 3.

https://www.acmicpc.net/problem/9012

 

9012번: 괄호

괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고

www.acmicpc.net


import java.util.*;
import java.io.*;

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));
		int a = Integer.parseInt(br.readLine());
		String[] arr = new String[a];
		for(int i=0; i<a; i++) {
			arr[i] = br.readLine();
			Stack<Character> s = new Stack<>();
			for(int j=0; j<arr[i].length(); j++) {
				char temp = arr[i].charAt(j);
				if(temp=='(') s.add(temp);
				else {
					if(!s.isEmpty()) {
						char temp2 = s.peek();
						if(temp2=='(') {
							s.pop();
							continue;
						}
						else s.push(temp);
					}
					if(s.isEmpty()) {
						s.push(temp);
					}
				}
				
			}
			if(s.size()!=0) {bw.write("NO\n");}
			else if(s.size()==0) {bw.write("YES\n");}
		}

		bw.close();
	}
	
}

'백준' 카테고리의 다른 글

백준 큐 - 10845번 : 큐  (0) 2022.03.03
백준 스택 - 10828번 : 스택  (0) 2022.03.03
백준 이분탐색 - 2805번 : 나무 자르기  (0) 2022.03.02
백준 큐 - 2164번 : 카드2  (0) 2022.03.02
백준 큐 - 1966번 : 프린터 큐  (0) 2022.03.02