Result: Accepted
Time: 4ms
Memory: 1124kB
#include<stdio.h>
#include<math.h>
#include<string.h>
int main()
{
int a[60],n,m,count,x,i,temp,len;
char s[20];
count = 0;
scanf("%d %d",&n,&m);
getchar();
while(m--)
{
x = 0;
gets(s);
if(s[4]=='L')
{
len = strlen(s);
for(i=9;i<len;++i)
{
x = x * 10 + s[i]- 48;
}
if(count==n)
{
printf("The queue is full");
}
else{
if(count==0)
{
a[count]=x;
}
else
{
for(i=count-1;i>=0;--i)
{
a[i+1]=a[i];
}
a[0]=x;
}
++count;
printf("Pushed in left: %d",x);
}
}
else if(s[4]=='R')
{
len = strlen(s);
for(i=10;i<len;++i)
{
x = x * 10 + s[i]- 48;
}
if(count==n)
{
printf("The queue is full");
}
else{
a[count]=x;
++count;
printf("Pushed in right: %d",x);
}
}
else if(s[3]=='L')
{
if(count==0)
{
printf("The queue is empty");
}
else
{
printf("Popped from left: %d",a[0]);
for(i=0;i<count-1;++i)
{
a[i]=a[i+1];
}
--count;
}
}
else if(s[3]=='R')
{
if(count==0)
{
printf("The queue is empty");
}
else
{
printf("Popped from right: %d",a[count-1]);
--count;
}
}
printf("\n");
}
}