백준 9012번

이성준·2021년 12월 2일
0

알고리즘

목록 보기
4/13

백준 9012번

제목 : 괄호

난이도 실버 4

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.StringTokenizer;

public class Main {

  public static void main(String[] args) throws NumberFormatException, IOException {
    BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
    int n = Integer.parseInt(input.readLine());
    ArrayList<String> stack = new ArrayList<String>();
    boolean isvps=true;
    for (int i = 0; i < n; i++) {
      String a = input.readLine();
      for (int j = 0; j < a.length(); j++){
      
        if(a.substring(j, j+1).equals("(")){
          stack.add(a.substring(j,j+1));
        
          if(j==a.length()-1){
            if(!stack.isEmpty()){
              isvps=false;
              break;
            }
        
            else{
              isvps=true;
              break;
            }
          }
        }
        
        else{
          if(stack.isEmpty()){
            isvps=false;
            break;
          }
         
  
          else{
            stack.remove(stack.size()-1);
            if(j==a.length()-1){
              if(!stack.isEmpty()){
                isvps=false;
                break;
              }
          
              else{
                isvps=true;
                break;
              }
            }
          
          }
        
        }
    
        }
        stack.clear();
        if(isvps==true){
          System.out.println("YES");
        }
        else{
          System.out.println("NO");
        }
       
      
      }

      
    }
  }

0개의 댓글