코딩테스트/JavaScript

[코딩테스트] 올바른 괄호

CODE_PLAN 2024. 1. 3. 21:29

나의 풀이

   function solution(s) {
            let answer = "YES";
            let a = [];
            let left = '('
            let right = ')'
            let sH = new Map();

            for (let x of a) {
                if (sH.has(x)) sH.set(x, sH.get(x) + 1);
                else sH.set(x, 1);
            }
            for (let x of str2) {
                if (!sH.has(x) || sH.get(x) == 0) return "NO";
                sH.set(x, sH.get(x) - 1);
            }
            for (let x of s) {
                a.push(x);
                if ()
            }
            return a;
        }

        let a = "(()(()))(()";
        console.log(solution(a));

 

 

모범 답안

 <script>
            function solution(s){
                let answer="YES";
                stack=[];
                for(let x of s){
                    if(x==='(') stack.push(x);
                    else{
                        if(stack.length===0) return "NO";
                        stack.pop();
                    }
                }
                if(stack.length>0) return "NO";  
                return answer;
            }
            
            let a="(()(()))(()";
            console.log(solution(a));
        </script>