Start: Jul, 10, 2019 08:30:00
2019年度暑期短学期达标测试补考
End: Jul, 10, 2019 11:30:00
Time elapsed:
Time remaining:

Problem_ID: I
Result: Accepted
Time: 5ms
Memory: 2020kB
Author: 2018212212013
In contest: 1284

#include<iostream>
#include<iomanip>
#include<algorithm>
#include<cmath>
#include<string>
#include<functional>
#include<deque>
using namespace std;
int main()
{
	int N,M,x;
	string s;
	cin>>N>>M;
	deque<int>deq;
	for(int i=1;i<=M;i++){
		cin>>s;
		//cout<<deq.size()<<endl;
		if(s=="pushLeft"){
			cin>>x;
			if(deq.size()==N)
				cout<<"The queue is full"<<endl;
			else{
				deq.push_front(x);
				cout<<"Pushed in left: "<<x<<endl;
			}
		}
		else if(s=="pushRight"){
			cin>>x;
			if(deq.size()==N)
				cout<<"The queue is full"<<endl;
			else{
				deq.push_back(x);
				cout<<"Pushed in right: "<<x<<endl;
			}
		}
		else if(s=="popLeft"){
			if(deq.empty())
				cout<<"The queue is empty"<<endl;
			else{
				cout<<"Popped from left: "<<deq.front()<<endl;
				deq.pop_front();
			}
		}
		else if(s=="popRight"){
			if(deq.empty())
				cout<<"The queue is empty"<<endl;
			else{
				cout<<"Popped from right: "<<deq.back()<<endl;
				deq.pop_back();
			}
		}
	}
	//system("pause");
	return 0;
}