728x90
반응형
10866번 덱
문제풀이
#include <iostream>
#include <deque>
#include <string.h>
using namespace std;
void fast_io(void)
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
}
int main(void)
{
fast_io();
deque<int> dq;
int n;
cin >> n;
char order[15];
while (n--)
{
int x;
cin >> order;
if (!strcmp(order, "push_front"))
{
cin >> x;
dq.push_front(x);
}
else if (!strcmp(order, "push_back"))
{
cin >> x;
dq.push_back(x);
}
else if (!strcmp(order, "pop_front"))
{
if (dq.empty())
{
cout << "-1\n";
}
else
{
cout << dq.front() << "\n";
dq.pop_front();
}
}
else if (!strcmp(order, "pop_back"))
{
if (dq.empty())
{
cout << "-1\n";
}
else
{
cout << dq.back() << "\n";
dq.pop_back();
}
}
else if (!strcmp(order, "size"))
{
cout << dq.size() << "\n";
}
else if (!strcmp(order, "empty"))
{
cout << dq.empty() << "\n";
}
else if (!strcmp(order, "front"))
{
if (dq.empty())
{
cout << "-1\n";
}
else
{
cout << dq.front() << "\n";
}
}
else if (!strcmp(order, "back"))
{
if (dq.empty())
{
cout << "-1\n";
}
else
{
cout << dq.back() << "\n";
}
}
}
}
좀더 간단하게 할수있는방법이랑 구조체를 사용해서 하는방법도 공부해보면 좋겠다.
728x90
반응형
'자라는 개발자 > 문제풀이' 카테고리의 다른 글
백준 C++ 11651번 좌표정렬하기 2 (0) | 2021.12.22 |
---|---|
백준 C++ 1654번 랜선 자르기 (0) | 2021.12.21 |
백준 C/C++ 10250번 ACM 호텔 (0) | 2021.12.18 |
백준 C++ 10828번 스택 (1) | 2021.12.17 |
백준 C++ 10989번 수 정렬하기 3 (0) | 2021.12.16 |