记录编号 |
215428 |
评测结果 |
AAAAAA |
题目名称 |
队列基本操作 |
最终得分 |
100 |
用户昵称 |
liu_runda |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.002 s |
提交时间 |
2015-12-21 14:45:39 |
内存使用 |
0.30 MiB |
显示代码纯文本
#include<cstdio>
#include<cstring>
#define next(a) (a+1)%10
using namespace std;
int q[2500];
int head,tail;
int main(){
freopen("queue.in","r",stdin);
freopen("queue.out","w",stdout);
int n;
scanf("%d",&n);
int tmp;
for(int i = 0;i<n;++i){
scanf("%d",&tmp);
if(tmp==1)head = tail;
else if(tmp==2){
if(tail-head<10){
scanf("%d",q+tail);
tail++;
}else {
scanf("%*d");
printf("queue out\n");
}
}else if(tmp==3){
if(head<tail)head++;
else printf("queue empty\n");
}else{
printf("%d\n",tail-head);
printf("%d",q[head]);
for(int i = head+1;i<tail;++i)printf(" %d",q[i]);
printf("\n");
}
}
fclose(stdin);fclose(stdout);
return 0;
}