Algorithm/스택과 큐
백준 큐(10845) C++ 풀이
khjtoy
2023. 1. 30. 00:25
알고리즘 분류
자료 구조
큐
문제 해결 아이디어
vector를 이용하여 queue의 구조인 FIFO(첫번째로 들어온 것이 가장 먼저 나간다)를 구현하였다,
코드
#include <iostream>
#include <vector>
using namespace std;
vector<int> v;
int main()
{
int n;
cin >> n;
string s;
int num;
for (int i = 0; i < n; i++)
{
cin >> s;
if (s == "push")
{
cin >> num;
v.push_back(num);
}
else
{
if (s == "pop")
{
if (v.size() == 0) cout << -1 << endl;
else
{
cout << v.front() << endl;
v.erase(v.begin());
}
}
else if (s == "size")
{
cout << v.size() << endl;
}
else if (s == "empty")
{
cout << v.empty() << endl;
}
else if (s == "front")
{
if (v.size() == 0) cout << -1 << endl;
else
cout << v.front() << endl;
}
else if (s == "back")
{
if (v.size() == 0) cout << -1 << endl;
else
cout << v.back() << endl;
}
}
}
}