괄호 회전하기(월간 코드 챌린지 시즌2) Lv.2 본문

알고리즘_프로그래머스/기타 문제

괄호 회전하기(월간 코드 챌린지 시즌2) Lv.2

giron 2021. 4. 20. 13:31
728x90

월간 코드 챌린지가 4월달에 있었다는 것을 이제서야 알아버렸다.. 학교 과제에 치여사느라 월코챌 참여를 놓쳤지만 연습문제로 풀어보았다!

월코챌 문제를 처음 풀어 본거였지만 타 코딩대회에 비해서 난이도는 쉬운것 같다..! 단순한 스택 자료구조 문제여서 생각나는대로 풀면 금방 해결 가능이었다...! 

학교 자료구조 수업이 도움이 된건가..? 쨋든 한방에 통과되어서 기분이 좋았다!

 

#include <string>
#include <vector>

using namespace std;

int solution(string s) {
    vector<char> v;
    int answer = 0;
    int check =1;
    string tmp;
    for(int i=0; i<s.size(); ++i){
        s = s.substr(1)+s[0];
        for( int i=0; i<s.size(); ++i){
            check =0;
            if(s[i]=='(' || s[i] == '{' || s[i] == '['){
                v.push_back(s[i]);
            }
            else{
                if(v.empty()){
                    check = 1;
                    break;
                }
                if(s[i] == ')' && v.back() == '('){
                    v.pop_back();
                }
                else if(s[i] == '}' && v.back() == '{'){
                    v.pop_back();
                }
                else if(s[i] == ']' && v.back() == '['){
                    v.pop_back();
                }
                else{
                    check =1;
                    break;
                }
            }
        }
        if(check==0 && v.empty())answer++;
        
    }
    
    return answer;
}
728x90

'알고리즘_프로그래머스 > 기타 문제' 카테고리의 다른 글

[프로그래머스] c/c++ 네트워크 level.3  (0) 2021.08.04
타겟 넘버  (0) 2021.05.18
해시_전화번호 목록  (0) 2021.03.28
완전탐색_카펫  (0) 2021.03.23
탐욕법(Greedy)_구명보트  (0) 2021.03.22
Comments