[BOJ] 9012 괄호 JAVA

popolarburr·2023년 3월 3일
0
post-thumbnail

- 문제



- 풀이


import java.util.Scanner;
import java.util.Stack;
 
public class Main {
 
	public static void main(String[] args) {
 
		Scanner in = new Scanner(System.in);
		
		int T = in.nextInt();
		
		for(int i = 0; i < T; i++) {
			System.out.println(solve(in.next()));	
		}
	}
 
	public static String solve(String s) {
 
		Stack<Character> stack = new Stack<>();
 
		for (int i = 0; i < s.length(); i++) {
 
			char c = s.charAt(i);
 
			if (c == '(') {
				stack.push(c);
			}
 
			else if (stack.empty()) {
				return "NO";
			}
			else {
				stack.pop();
			}
		}
 
		if (stack.empty()) {
			return "YES";
		} 
		else {
			return "NO";
		}
	}
}

- 정리


사실 그냥 int값으로 해결하려했다. ( 일때 +, ) 일때 - 해서 각 문자열을 다 돌고 끝났을 때 음수거나 0이 아니면 NO를 출력하려고 했다. 이게 당연히 맞는 줄 알았다 Stack을 생각못했기 때문에 그러다 스택이 떠올라 스택으로 푸니 바로 .. 컷!

아래 사진은 이상한 곳에서 발악한 나를 볼 수 있는 사진..




[링크] : 개인저장소

profile
차곡차곡

0개의 댓글