본문 바로가기

Problem Solving/백준

[백준] 9012: 괄호

stack을 이용해서 push, pop을 처음 구현했는데 자꾸 runtime 에러가 나고 돌아가지 않길래,

결국은 그냥 +1, -1을 이용한 카운팅으로 했다.

 

내가 짠 코드

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

int main(void){
    int N,i,j,value;
    string input;

    scanf("%d\n",&N);
    for(i=0;i<N;i++){
        
        value=0;
        getline(cin,input);
        for(j=0;j<input.length();j++) {
            
            if(input[j]=='(') value ++;
            else value--;
            if(value <0){
                value = 1;
                break;
            }
        }
        if(value==0) printf("YES\n");
        else printf("NO\n");
        
    }
}

www.acmicpc.net/problem/9012

 

9012번: 괄호

괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고

www.acmicpc.net

 

'Problem Solving > 백준' 카테고리의 다른 글

[백준] 1966: 프린터큐  (0) 2021.02.26
[백준] 1406번: 에디터  (0) 2021.02.24
[백준] 10816: 숫자 카드 2  (0) 2021.02.24
[백준] 11651번 : 좌표 정렬하기 2  (0) 2021.02.24
[백준] 1009: 분산처리  (0) 2021.02.19