반응형
#include <string>
#include <vector>
#include <stack>
using namespace std;
int solution(string s) {
int answer = 0;
size_t StringSize = s.size();
while(StringSize - 1 > 0)
{
stack<char> sSave;
for(size_t i = 0; i < s.size(); ++i)
{
if(s[0] == ')' || s[0] == '}' || s[0] == ']')
{
sSave.push(s[i]);
break;
}
if(sSave.empty())
{
sSave.push(s[i]);
continue;
}
else
{
char Top = sSave.top();
if(Top == '(' && s[i] == ')')
{
sSave.pop();
}
else if(Top == '{' && s[i] == '}')
{
sSave.pop();
}
else if(Top == '[' && s[i] == ']')
{
sSave.pop();
}
else
{
sSave.push(s[i]);
}
}
}
if(sSave.empty())
{
++answer;
}
int Size = s.size();
char SaveChar = s[0];
for(size_t i = 0; i < Size; ++i)
{
s[i] = s[i + 1];
}
s[Size - 1] = SaveChar;
--StringSize;
}
return answer;
}
반응형
'프로그래머스 > lv2' 카테고리의 다른 글
프로그래머스 : 카카오프렌즈 컬러링북 (lv2) C++ (0) | 2022.10.06 |
---|---|
프로그래머스 : k진수에서 소수 개수 구하기 (lv2) C++ (0) | 2022.10.06 |
프로그래머스 : 멀리 뛰기 (lv2) (0) | 2022.10.06 |
프로그래머스 : 짝지어 제거하기 (lv2) (0) | 2022.10.06 |
프로그래머스 : 카펫 (lv2) (0) | 2022.10.06 |
댓글