C/Algorithm with 백준
9012번 괄호 (스택활용)
OHDONGHYEON
2022. 5. 3. 19:33
이 문제는 스택을 활용하여 풀어보았다. 스택을 활용하니 너무 쉬웠고,
고민하는 시간이 많기는 했다.
앞으로는 이러한 알고리즘 기법들을 생각해보고 풀어야겠다고 생각했다
겨우 규칙을 찾아내고 스택을 사용하니 성공했다.
백준 링크는 아래와 같다.
https://www.acmicpc.net/problem/9012
아래는 내가 간단하게 써본 코드이다.
#include <stdio.h>
int t;
char arr[100];
int check[100];
int size;
int main()
{
int i;
scanf("%d", &t);
while(t--) {
scanf("%s", arr);
for(i=0; arr[i] != NULL; i++) {
check[size++] = arr[i];
if(size > 1 && check[size-2] == '(' && check[size-1] == ')') {
size -= 2;
}
}
if(size == 0) {
printf("YES\n");
} else {
printf("NO\n");
}
size = 0;
}
}