풀이코드
#include <bits/stdc++.h>
using namespace std;
/*
push X: 정수 X를 큐에 넣는 연산이다.
pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다.
만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.
size: 큐에 들어있는 정수의 개수를 출력한다.
empty: 큐가 비어있으면 1, 아니면 0을 출력한다.
front: 큐의 가장 앞에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.
back: 큐의 가장 뒤에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.
*/
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
queue<int> Q;
int num;
int input;
string s;
cin >> num;
while (num--) {
cin >> s;
if (s == "push") {
cin >> input;
Q.push(input);
} else if (s == "pop") {
if (Q.empty()) {
cout << -1 << '\n';
} else {
cout << Q.front() << '\n';
Q.pop();
}
} else if (s == "size") {
cout << Q.size() << '\n';
} else if (s == "empty") {
cout << Q.empty() << '\n';
} else if (s == "front") {
if (Q.empty())
cout << -1 << '\n';
else
cout << Q.front() << '\n';
} else { //back
if (Q.empty())
cout << -1 << '\n';
else
cout << Q.back() << '\n';
}
}
}
'Algorithm' 카테고리의 다른 글
BOJ 1926 그림 c++ (0) | 2020.07.10 |
---|---|
BOJ 10866 덱 (C++) (0) | 2020.07.06 |
BOJ 4949 균형잡힌세상(C++) (0) | 2020.07.05 |
BOJ 10828 스택 (c++) (0) | 2020.07.05 |
프로그래머스 - 완주하지 못한 선수(Java) (0) | 2020.07.02 |
최근댓글