반응형
#include <iostream>
#include <stack>
#include <string>
#include <vector>
using namespace std;
// 1874 스택 수열
string algo(vector<int> v)
{
int num = 0;
string str = "";
stack<int> s;
for (int i = 1; i < v.size() + 1; i++)
{
s.push(i);
str += "+";
while (!s.empty() && v[num] == s.top())
{
s.pop();
num++;
str += "-";
}
}
if (!s.empty())
{
cout << "NO";
str = "";
}
return str;
}
int main()
{
int N = 0;
int n = 0;
vector<int> v;
cin >> N;
for (int i = 0; i < N; i++)
{
cin >> n;
v.push_back(n);
}
string a = algo(v);
for (int i = 0; i < a.size(); i++)
cout << a[i] << '\n';
return 0;
}
반응형
LIST
'알고리즘 문제 > 백준' 카테고리의 다른 글
[C++] 에디터(list) - 1406 (0) | 2022.11.16 |
---|---|
[C++] 큐 - 10845 (0) | 2022.11.16 |
[C++] 괄호 - 9012 (0) | 2022.11.13 |
[c++] 덩치 - 7568 (0) | 2022.11.13 |
[ C++ ] 단어 뒤집기 - 9093 (0) | 2022.11.12 |