Algorithm/C++
[백준 BoJ] 10845 - 큐
cgy12306
2021. 3. 25. 16:54
#include<iostream>
#include<string.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int N, queue[100001], a, size = 0;
char cmd[6] = { 0, };
cin >> N;
for (int i = 0; i < N; i++) {
cin >> cmd;
if (!strcmp(cmd, "push")) {
cin >> a;
queue[size] = a;
size++;
}
else if (!strcmp(cmd, "pop")) {
if (!size) {
cout << "-1\n";
}
else if (size == 1) {
cout << queue[0] << "\n";
queue[0] = 0;
size--;
}
else {
cout << queue[0] << "\n";
for (int j = 1; j < size; j++) {
queue[j - 1] = queue[j];
}
size--;
queue[size] = 0;
}
}
else if (!strcmp(cmd, "size")) {
cout << size << "\n";
}
else if (!strcmp(cmd, "empty")) {
if (!size) {
cout << "1\n";
}
else {
cout << "0"<<"\n";
}
}
else if (!strcmp(cmd, "front")) {
if (!size) {
cout << "-1\n";
}
else {
cout << queue[0] << "\n";
}
}
else if (!strcmp(cmd, "back")) {
if (!size) {
cout << "-1\n";
}
else {
cout << queue[size-1] << "\n";
}
}
}
}