7-5 队列的实现及基本操作
分数 13
给定一个初始为空的队列和一系列入队、出队操作,请编写程序输出每次出队的元素。队列的元素值均为整数。
输入格式:
输入第1行为1个正整数n,表示操作个数;接下来n行,每行表示一个操作,格式为1 d或0。1 d表示将整数d入队,0表示出队。n不超过20000。
输出格式:
按顺序输出每次出队的元素,每个元素一行。若某出队操作不合法(如在队列空时出队),则对该操作输出invalid。
输入样例:
7 1 1 1 2 0 0 0 1 3 0
输出样例:
1 2 invalid 3
代码长度限制
16 KB
时间限制
50 ms
内存限制
20 MB
#include<stdio.h>
int main(){
int n,e;
scanf("%d",&n);
int queue[n],front=0,rear=0;
while(scanf("%d",&e),n--)
if(e) scanf("%d",&queue[rear++]);
else front-rear?printf("%d\n",queue[front++]):printf("invalid\n");
return 0;
}