Jin's Library

[Silver Ⅳ] 4949 - 균형잡힌 세상 본문

Algorithm - Java/BOJ - Silver

[Silver Ⅳ] 4949 - 균형잡힌 세상

Linkin 2025. 10. 17. 13:41
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Stack;
public class BOJ_4949 {
    public static void main(String[] args) throws Exception{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        String line;
        String result = "yes";
        while ((line = br.readLine()) != null ) {
            if( line.equals(".")) break;
            char[] N = line.toCharArray();
            Stack<Character> stack = new Stack<>();

            for(char x : N){
                result = "yes";
                if(x == '(' || x == '['){
                    stack.push(x);
                }else if(x == ')'){
                    if(stack.isEmpty()){
                        result = "no";
                        break;
                    } 
                    if(stack.lastElement() == '(') stack.pop();
                    else{
                        result = "no";
                        break;
                    } 
                }else if(x == ']'){
                    if(stack.isEmpty()){
                        result = "no";
                        break;
                    }                     
                    if(stack.lastElement() == '[') stack.pop();
                    else{
                        result = "no";
                        break;
                    } 
                }
            }
            if( stack.isEmpty() != true) result = "no";
            sb.append(result).append("\n");
        }
        System.out.println(sb);
    }
}