자기개발👨‍💻/코딩 알고리즘

[C++] 백준 9012 괄호 (알고스터디 E조)

천숭이 2022. 3. 15. 01:06

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

 

9012번: 괄호

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

www.acmicpc.net

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

int main(void){
	int n;
	vector<string> v;
	cin >> n;
	int size_ = 0;
	string str;
	for (int i=0;i<n;i++){
		cin>>str;
		size_ = 0;
		for(int j=0;j<str.size();j++){
			if (str[j] == '(') size_ +=1 ;
			else if (str[j] == ')') size_ -=1 ;
			
			if (size_ < 0) {
				v.push_back("NO");
				break;
			}
		} 
		if (size_ == 0) v.push_back("YES");
		else if (size_ > 0) v.push_back("NO");
	}
	
	for(vector<string>::iterator iter = v.begin(); iter!=v.end();iter++){
		cout<<*iter<<"\n";
	}

}

 

- no, yes 판단해서 바로바로 출력하면 틀렸습니다 결과가 나와서 따로 벡터에 저장한 후 출력함