페이지

9012번: 괄호



$O(nl)$

스택에 '('이 나오면 push, ')'이 나오면 pop을 한다. 스택이 비었을 때 pop명령을 수행해야했거나 모든 괄호를 처리했을 때 스택이 비어있지 않으면 "NO"를 출력하고 아니면 "YES"를 출력한다.


#include<cstdio>
int n;
char s[51];
int main() {
    scanf("%d", &n);
    for (int i = 0; i < n; i++) {
        scanf("%s", s);
        int c = 0;
        for (int j = 0; s[j] && c >= 0; j++) s[j] == '(' ? c++ : c--;
        puts(c ? "NO" : "YES");
    }
    return 0;
}

댓글 없음 :

댓글 쓰기