[BOJ] 9012. 괄호

동스토리 ㅣ 2020. 10. 18. 23:03

반응형

문제

www.acmicpc.net/problem/9012

 

9012번: 괄호

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

www.acmicpc.net


해설

 

스택을 사용해서 '(' 일 경우 push 해주고 ')' 일 경우 pop 해준다


코드

#include<iostream>
#include<stack>
#include<string>

using namespace std;

stack<char> st;

int main() {

	int t;
	cin >> t;

	string arr;

	while (t != 0) {

		cin >> arr;
		for (int i = 0; i < arr.length(); i++) {
			if (st.empty() || arr[i] == '(') st.push(arr[i]);
			else if (st.top() == '(') st.pop();
		}
		if (st.empty()) cout << "YES" << '\n';
		else cout << "NO" << '\n';
		t--;
		while (!st.empty()) st.pop();
	}
	return 0;
}

 

 

 

반응형

'Development > Algorithm' 카테고리의 다른 글

[BOJ] 10799. 쇠막대기  (0) 2020.10.27
[BOJ] 2667. 단지번호붙이기  (0) 2020.10.22
[BOJ] 11279. 최대 힙  (0) 2020.10.18
[BOJ] 1927. 최소 힙  (0) 2020.10.18
[BOJ] 10866. 덱  (0) 2020.10.17