백준 1874 스택 수열 C++
- C
- 2023. 4. 6.
백준 1874 스택 수열.
백준 1874번 "스택 수열" 문제의 자세한 내용은 글 하단의 문제 링크를 참고하세요.
1874번 문제에 주어지는 입력 및 예시
입력:
8
4
3
6
8
7
5
2
1
출력:
+
+
+
+
-
-
+
+
-
+
+
-
-
-
-
-
코드
백준 1874번 "스택 수열" 문제의 코드입니다.
#include <bits/stdc++.h>
using namespace std;
int main() {
int num,k=1;
queue<int> q;
stack<int> a;
queue<char> result;
cin>>num;
for(int i=0;i<num;i++){
int tmp;
cin>>tmp;
q.push(tmp);
}
while(!q.empty()){
if(!a.empty() && q.front()==a.top()){
q.pop();
a.pop();
result.push('-');
}
else if(k<=q.front()){
result.push('+');
a.push(k++);
}else{
cout<<"NO";
return 0;
}
}
while(!result.empty()){
char tmp=result.front(); //result를 string으로 쓰면 틀림.
cout<<tmp<<"\n";
result.pop();
}
return 0;
}
실행
위의 코드를 예제의 입력을 넣어 실행했을 때의 결과입니다.
'C' 카테고리의 다른 글
백준 1920 수 찾기 C++ (0) | 2023.04.07 |
---|---|
백준 1260 DFS와 BFS C++ (0) | 2023.04.06 |
백준 18111 마인크래프트 C++ (0) | 2023.04.06 |
백준 1012 유기농 배추 C++ (0) | 2023.04.06 |
백준 2920 음계 C++ (0) | 2023.04.06 |