알고리즘/BOJ

백준 4949번 균형잡힌 세상

꾸준함. 2018. 11. 9. 19:05

문제 링크입니다: https://www.acmicpc.net/problem/4949


스택 개념을 이용한 문자열 처리 문제였습니다.

백준 9012번 괄호(http://jaimemin.tistory.com/754)와 유사한 문제였습니다.


#include <iostream>

#include <string>

#include <stack>

using namespace std;

 

int main(void)

{

        ios_base::sync_with_stdio(0);

        cin.tie(0);

        while (1)

        {

                 string s;

                 getline(cin, s);

                 stack<char> st;

 

                 if (s.length() == 1 && s[0] == '.')

                         break;

 

                 bool flag = true;

                 for (int j = 0; j < s.length(); j++)

                 {

                         if (s[j] == '(')

                                 st.push('(');

                         else if (s[j] == '[')

                                 st.push('[');

                         else if (s[j] == ']')

                         {

                                 if (!st.empty() && st.top() == '[')

                                          st.pop();

                                 else

                                 {

                                          flag = false;

                                          break;

                                 }

                         }

                         else if (s[j] == ')')

                         {

                                 if (!st.empty() && st.top() == '(')

                                          st.pop();

                                 else

                                 {

                                          flag = false;

                                          break;

                                 }

                         }

                 }

 

                 if (flag && st.empty())

                         cout << "yes\n";

                 else

                         cout << "no\n";

        }

        return 0;

}


개발환경:Visual Studio 2017


지적, 조언, 질문 환영입니다! 댓글 남겨주세요~


반응형

'알고리즘 > BOJ' 카테고리의 다른 글

백준 2890번 카약  (0) 2018.11.09
백준 10546번 배부른 마라토너  (0) 2018.11.09
백준 5612번 터널의 입구와 출구  (0) 2018.11.07
백준 9324번 진짜 메시지  (0) 2018.11.07
백준 2110번 공유기 설치  (2) 2018.11.07