백준 - 9012 괄호 (자바)

남현·2025년 9월 15일

백준

목록 보기
7/16

문제

풀이

import java.util.*;

class Main {
	public static void main(String[] args) {
    	Scanner sc = new Scanner(System.in);
        int T = sc.nextInt();
        for(int i=0; i<T; i++) {
        	int count = 0;
            boolean b = true;
            String arr = sc.next();
            for(int j=0; j<arr.length(); j++) {
              char c = arr.charAt(j);
              if(c == '(') {
                  count++;
              } else {
                  count--;
              }
              if(count < 0) {
                  b = false;
                  break;
              }
          	}
        	if(b && count == 0) {
        		System.out.println("YES");
        	} else {
        		System.out.println("NO");
        	}
    	}
    	sc.close();
	}
}

회고

문자열을 입력받고 charAt()을 사용하여 각 자리의 열린 괄호와 닫힌 괄호의 수를 체크
또한 count가 음수인 경우 닫힌 괄호가 열린 괄호보다 먼저 나오게 되므로, 이를 바로 NO로 처리합니다.

profile
백엔드 호소인

0개의 댓글