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