蓝桥杯 队列操作

问题描述
  队列操作题。根据输入的操作命令,操作队列(1)入队、(2)出队并输出、(3)计算队中元素个数并输出。
输入格式
  第一行一个数字N。
  下面N行,每行第一个数字为操作命令(1)入队、(2)出队并输出、(3)计算队中元素个数并输出。
输出格式
  若干行每行显示一个2或3命令的输出结果。注意:2.出队命令可能会出现空队出队(下溢),请输出“no”,并退出。
样例输入
7
1 19
1 56
2
3
2
3
2
样例输出
19
1
56
0
no
数据规模和约定
  1<=N<=50
 
要注意如果队列中没有数值要退出
 
#include<iostream>
#include<queue>
using namespace std;

int main()
{
    queue<int> q;
    int n,m,num;
    cin>>n;
    while(n--)
    {
        cin>>m;
        switch(m)
        {
            case 1: cin>>num; q.push(num);
                    break;
            case 2: if(q.size()>0)
                    {
                        cout<<q.front()<<endl;
                        q.pop();
                    }
                    else
                    {
                        cout<<"no"<<endl;
                        return 0;
                    }
                    break;
            case 3: cout<<q.size()<<endl;
                    break;
        }
    }
    return 0;
}

 

posted @ 2018-02-28 08:24  ZZUGPY  阅读(256)  评论(0编辑  收藏  举报