[c++/프로그래머스] 올바른 괄호

문제 https://programmers.co.kr/learn/courses/30/lessons/12909

📝문제 포인트

괄호가 잘 짝지어졌는지 확인하는 문제이다.
s(괄호가 들어간 문자열)을 하나하나 확인하면서
'('괄호면 스택에 넣고 ')'괄호를 만나면 스택에 있는것을 pop했다
s를 다 순회했는데도 스택에 무언가 남아있다면 false

✍코드

#include<string>
#include <iostream>
#include <stack>
using namespace std;

bool solution(string s)
{
    stack<char> stack;
    bool answer = true;
    
    for(int i=0;i<s.size();i++){
        if(s[i]=='('){
            stack.push(s[i]);
        }else{
            if(stack.empty()){
                answer=false;
                break;
            }
            else stack.pop();
        }
    }
    
    if(stack.empty())
        return answer;
    else
        return false;
}

좋은 웹페이지 즐겨찾기