본문 바로가기
  • 개발 / 공부 / 일상
C++

(C++) [백준] 괄호(Parenthesis)

by JJeongHyun 2023. 1. 10.
반응형

https://www.acmicpc.net/problem/9012

 

9012번: 괄호

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

www.acmicpc.net

 

요약)

  1. 테스트 데이터로 몇 개를 입력할지 명령어의 수를 입력한다
  2. 이후 테스트 데이터를 입력을 하는데 한 줄 단위로 작성한다
    1. 하나의 괄호 문자열은 2 이상 50 이하의 길이로 작성한다
    2. 입력한 괄호 문자열이 해당 조건에 맞거나 틀린 지는 한 줄에 하나씩 출력된다

 

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

using namespace std;

stack<char> st;

int main()
{
	int n;
	cin >> n;
	for (int i = 0; i < n; i++) {
		string ans;
		cin >> ans;
		int len = (int)ans.length();
		for (int j = 0; j < len; j++) {
			char c = ans[j];
			if (c == '(') st.push(c);
			else {
				if (st.empty()) return false;
				else {
					st.pop();
				}
			}
		}
		if (st.empty()) cout << "Yes" << "\n";
		else cout << "No" << "\n";
	}
	return 0;
}

'C++' 카테고리의 다른 글

(C++) [백준] 카드1  (0) 2023.01.10
(C++) [백준] 큐  (0) 2023.01.10
(C++) [백준] Stack  (0) 2023.01.10
(C++) [백준] 회사에 있는 사람(Hash)  (0) 2023.01.10
(C++) [백준] 베스트셀러(Hash)  (0) 2023.01.10