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: 6ms
Memory: 1756kB
Author: 2018212212187
In contest: 1284

#include<iostream>
#include<algorithm>
#include<string.h> 
using namespace std;
int main(){
	int N,M;
	scanf("%d %d",&N,&M);
	getchar(); 
	char str[11];
	int a[51]; 
	int rank;
	int sum=0; //记录目前队列中的数个数 
	while(M--){
		scanf("%s",str);
		if(str[4]=='L'){
			int k; 
			scanf("%d",&k); 
			sum++;
			if(sum>N){//队列满了 
				printf("The queue is full\n");
				sum--;
			} 
			else{
				int b[101];
				printf("Pushed in left: %d\n",k); 
				b[0]=k; 
				int j=1; //记录b数的个数 
				for(int i=0;i<sum-1;i++){
					b[j]=a[i];
					j++; 
				} 
				for(int i=0;i<sum;i++){
					a[i]=b[i];
				} 
			} 
		} 
		else if(str[4]=='R'){
			int k;
			scanf("%d",&k);
			sum++; 
			if(sum>N){//队列满了 
				printf("The queue is full\n");
				sum--;
			} 
			else{
				printf("Pushed in right: %d\n",k); 
				a[sum-1]=k;
			}  
		} 
		else if(str[4]=='e') 
		{
			sum--;
			if(sum<0){
				printf("The queue is empty\n");
				sum++;
			} 
			else{
				printf("Popped from left: %d\n",a[0]);
				int b[101]; 
				int j=0; 
				for(int i=1;i<sum+1;i++){
					b[j]=a[i]; 
					j++;
				} 
				for(int i=0;i<sum;i++){
					a[i]=b[i]; 
				} 
			} 
		} 
		else{
			sum--;
			if(sum<0){
				printf("The queue is empty\n");
				sum++;
			} 
			else{
				printf("Popped from right: %d\n",a[sum]);
			} 
		} 
	}
	return 0;
}