Result: Accepted
Time: 3ms
Memory: 1120kB
#include<stdio.h>
#include<string.h>
int main(){
char s[1000];
int sum=0,m,n,le=-1,ri=-1,q[20]={0},x;
scanf("%d %d",&m,&n);
for(int i=0;i<n;++i){
scanf("%s",s);
if(strcmp(s,"pushLeft")==0){
scanf("%d",&x);
sum++;
if(sum>m){
printf("The queue is full\n");
sum--;
}
else{
le++;
q[9-le]=x;
printf("Pushed in left: %d\n",q[9-le]);
}
}
if(strcmp(s,"pushRight")==0){
scanf("%d",&x);
sum++;
if(sum>m){
printf("The queue is full\n");
sum--;
}
else{
ri++;
q[10+ri]=x;
printf("Pushed in right: %d\n",q[10+ri]);
}
}
if(strcmp(s,"popLeft")==0){
sum--;
if(sum<0){
printf("The queue is empty\n");
sum++;
}
else{
printf("Popped from left: %d\n",q[9-le]);
le--;
}
}
if(strcmp(s,"popRight")==0){
sum--;
if(sum<0){
printf("The queue is empty\n");
sum++;
}
else{
printf("Popped from right: %d\n",q[10+ri]);
ri--;
}
}
}
}