https://www.acmicpc.net/problem/18258
18258번: 큐 2
첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지
www.acmicpc.net
#include <iostream>
#include <queue>
using namespace std;
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
queue<int> Q;
int num;
cin >> num;
for (int i = 0; i < num; i++)
{
string K;
cin >>K;
if (K == "push")
{
int PUSH;
cin >> PUSH;
Q.push(PUSH);
continue;
}
if (K == "pop")
{
if (Q.empty())
{
cout << -1 << "\n";
}
else
{
cout << Q.front() << "\n";
Q.pop();
}
continue;
}
if (K == "size")
{
cout << Q.size() << "\n";
continue;
}
if (K == "empty")
{
if (Q.empty())
{
cout << 1 << "\n";
}
else
{
cout << 0 << "\n";
}
continue;
}
if (K == "front")
{
if (Q.empty())
{
cout << -1 << "\n";
}
else
{
cout << Q.front() << "\n";
}
continue;
}
if (K == "back")
{
if (Q.empty())
{
cout << -1 << "\n";
}
else
{
cout << Q.back() << "\n";
}
continue;
}
}
}
큐를 설명하기 위한 문제
'코딩 > 문제' 카테고리의 다른 글
백준 2164 카드2 (0) | 2022.06.28 |
---|---|
백준 17298 오큰수 (0) | 2022.06.28 |
백준 1874 스택 수열 (0) | 2022.06.28 |
백준 4949 균형잡힌 세상 (0) | 2022.06.28 |
백준 9012 괄호 (0) | 2022.06.28 |