AcWing 829. 模拟队列
原题链接
简单
作者:
云_580
,
2024-09-05 12:02:04
,
所有人可见
,
阅读 1
#include<bits/stdc++.h>
using namespace std;
const int N = 1e5+10;
int n,head,rear;
int q[N];
//初始化head=rear
void init(){
head=rear=0;
}
//队尾加入一个数
void push(int x){
q[rear++]=x;
}
//弹出队头元素
int pop(){
return q[head++];
}
//判断是否为空,即head==rear
bool isEmpty(){
return head==rear;
}
//返回队头元素
int query(){
return q[head];
}
int main(){
cin>>n;
for(int i = 1;i<=n;i++){
string s;
int x;
cin>>s;
if(s=="push"){
cin>>x;
push(x);
}else if(s=="empty"){
if(isEmpty())cout<<"YES"<<endl;
else cout<<"NO"<<endl;
}else if(s=="pop"){
pop();
}else cout<<query()<<endl;
}
return 0;
}