본문 바로가기
백준

[10866] 덱

by Jcoder 2018. 7. 22.


#include <iostream>
#include <deque>
#include <string>
using namespace std;
int main()
{
deque<int> dq;
int i, num, testcase;
string str;
cin >> testcase;
for (i = 0; i < testcase; i++)
{
cin >> str;
if (str == "push_front")
{
cin >> num;
dq.push_front(num);
}
else if (str == "push_back")
{
cin >> num;
dq.push_back(num);
}
else if (str == "pop_front")
{
if (!dq.empty())
{
cout << dq.front() << endl;
dq.pop_front();
}
else
cout << "-1\n";
}
else if (str == "pop_back")
{
if (!dq.empty())
{
cout << dq.back() << endl;
dq.pop_back();
}
else
cout << "-1\n";
}
else if (str == "size")
cout << dq.size() << endl;
else if (str == "empty")
{
if(dq.empty())
cout << "1\n";
else
cout << "0\n";
}
else if (str == "front")
{
if (!dq.empty())
cout << dq.front() << endl;
else
cout << "-1\n";
}
else if (str == "back")
{
if (!dq.empty())
cout << dq.back() << endl;
else
cout << "-1\n";
}
}
return 0;
}


'백준' 카테고리의 다른 글

[2747] 피보나치 수  (0) 2018.07.23
[1021] 회전하는 큐  (0) 2018.07.22
[1158], [11866] 조세퍼스 문제  (0) 2018.07.22
[1966] 프린터 큐  (0) 2018.07.22
[10845] 큐  (0) 2018.07.22