C언어/문제풀다 하나씩

boj 백준 9012 스택 괄호 VPS 문제

mcdn 2020. 8. 8. 15:16
반응형

#include <iostream>
#include <stack>
#include <cstring>
using namespace std;

int is_Vps(char str[51])
{
	stack <char>st;
	for (int j = 0; j < strlen(str); j++)
	{
		if (str[j] == '(')
			st.push(str[j]);
		else // ;);
		{
			if (st.empty())
				return 0;
			if (st.top() == '(')
				st.pop();
			else // ')'
				return 0;
		}

	}
	if (st.empty())
		return 1;
	else
		return 0;
}

int main(void)
{
	int n;
	cin >> n;

	for (int i = 0; i < n; i++)
	{
		char str[51];
		cin >> str;
		int ans = is_Vps(str);
		if (ans == 1)
			cout << "YES" << endl;
		else
			cout << "NO" << endl;
	}
}

 첫번째 틀린 이유 : 백준은 <string>헤더를 인식 못하고 <cstring>헤더를 인식한다. 

 

두번째 틀린 이유 : cout << "YES"랑 "NO"부분에서 줄바꿈을 못함 endl... <<endl나중에 추가함. 

반응형