题目描述

男孩被绑架了!

他非常想念他的母亲,现在非常害怕。你想象不出他被关在的房间有多黑,这么穷吗?.

作为一个聪明的ACboy,你想把ACboy从怪物的迷宫里救出来,但是当你来到迷宫的门口时,怪物说:“我听说你很聪明,但是如果不能解决我的问题,你会和ACboy一起死。”

怪物的问题显示在墙上:每个问题的第一行是一个整数N(命令的数目),一个单词“FIFO”或“FILO”。(你很高兴,因为你知道“FIFO”代表“先进先出”,“FILO”代表“先进先出”)。接下来的N行中,每行是“IN M”或“OUT”(M表示整数)。而一个问题的答案是一道门,所以如果你想拯救ACboy,请仔细回答这个问题

输入

第一行有一个整数,表示测试用例的数量。下面描述了每个子问题的输入。

输出

对于每个“OUT”命令,您应该根据单词是“FIFO”或“FILO”输出一个整数,如果没有任何整数,则输出一个单词“None”。

样例

输入

4
4 FIFO
IN 1
IN 2
OUT
OUT
4 FILO
IN 1
IN 2
OUT
OUT
5 FIFO
IN 1
IN 2
OUT
OUT
OUT
5 FILO
IN 1
IN 2
OUT
IN 3
OUT

输出

1
2
2
1
1
2
None
2
3

题解

简单题目,结合题意和例子,可以自己推测出来,这里就直接上代码啦。

#include<bits/stdc++.h>
using namespace std;
queue<int>dk;
stack<int>t1;
int main()
{int n,m,a;string s,s1;cin>>n;while(n--){cin>>m;cin>>s;if(s=="FIFO"){for(int i=1;i<=m;i++){cin>>s1;if(s1=="IN"){cin>>a;dk.push(a);}if(s1=="OUT"){if(!dk.empty()){cout<<dk.front()<<endl;dk.pop();}elsecout<<"None"<<endl;}}}elseif(s=="FILO"){for(int i=1;i<=m;i++){cin>>s1;if(s1=="IN"){cin>>a;t1.push(a);}if(s1=="OUT"){if(!t1.empty()){cout<<t1.top()<<endl;t1.pop();}elsecout<<"None";}}}}return 0;
}

STL queue:男孩被绑架了!相关推荐

  1. stl:queue 源码_C ++ STL中的queue :: empty()和queue :: size()

    stl:queue 源码 In C++ STL, Queue is a type of container that follows FIFO (First-in-First-out) element ...

  2. STL—queue(队列) 详解

    首先,在STL中 queue 和 stack 其实并不叫容器(container),而是叫适配器(adapter),他们是对容器的再封装. 队列queue: 队列,简称对,是一种操作受限的线性表.限制 ...

  3. STL——queue、priority_queue、deque

    文章目录 queue(队列) priority_queue(优先队列) 1.与queue的区别: 2.示例: 3.priority_queue内元素优先级设置 deque 示例: queue(队列) ...

  4. STL queue priority_queue

    queue 队列 queue 队列 就像排队一样,后来的排在后面,先来的先出队.所以只能对队首和队尾的元素进行操作 back() 返回最后一个元素 empty() 如果队列空则返回真 front() ...

  5. STL - queue(队列)

    Queue简单介绍 queue是队列容器.是一种"先进先出"的容器. queue是简单地装饰deque容器而成为另外的一种容器. #include <queue> qu ...

  6. [C++STL]queue容器用法介绍

  7. Queue+Stack(C++,标准库中的队列和栈)

    STL Queue(先进先出) 头文件#include 成员函数 queue::pop () //出队列 queue::push () //入队列 queue::size () //返回队列中元素个数 ...

  8. STL容器底层数据结构的实现

    C++ STL 的实现: 1.vector      底层数据结构为数组 ,支持快速随机访问 2.list            底层数据结构为双向链表,支持快速增删 3.deque       底层 ...

  9. c++ STL 容器

    STL源码分析 (一)vector容器 vector的数据安排以及操作方式,与array非常相似.两者的唯一区别在于空间的运用的灵活性.array是静态空间,一旦配置了就不能改变.vector是动态空 ...

最新文章

  1. consolel API大全-附测试结果
  2. 鸿蒙是单线程还是多线程,鸿蒙 RT-Thread 两者之间究竟是不是竞争关系呢
  3. MySQL在线DDL工具pt-osc
  4. 轮盘赌算法的java实现算例
  5. Namomo Spring Camp Div2 Week1 - 第二次打卡
  6. Redis数据持久化管理之RDB模式
  7. NavigateUr l动态参数 格式化参数
  8. 一、传统应用带来的问题
  9. spring定时器详解
  10. unity游戏开发毕设_基于unity游戏引擎的游戏设计毕设论文.doc
  11. UG GC工具箱中的齿轮与弹簧
  12. 手机共享计算机网络连接,电脑和手机网络的相互共享
  13. Vue组件的抽离和封装
  14. coreldraw高级快捷键技巧
  15. 基于Stacey模型的变革小招式:强有力的提议
  16. 2021年上半年软件设计师考试评估解析
  17. VMware安装WinXP蓝屏及激活
  18. CSDN自动回复灌水乐园帖子-httpClient篇
  19. 网络程序设计——VC的多线程编程(线程与进程)
  20. 2d游戏设计,pygame 游戏开发

热门文章

  1. 习题:一圆型游泳池如图所示,现在需在其周围建一圆型过道,并在其四周围上栅栏。栅栏价格为35元/米,过道造价为20元/平方米。过道宽度为3米,游泳池半径由键盘输入。要求编程计算并输出过道和栅栏的造价。
  2. java graphics2d旋转_JAVA用Graphics2D实现图片旋转,缩放,合成
  3. MongoDB启动shutting down with code:100处理
  4. 解决ImportError: sys.meta_path is None, Python is likely shutting down.问题
  5. 面临困难不知道如何抉择怎么办,《大话西游之大圣娶亲》观后感
  6. imchat视频聊天室 linux,基于Nuxt+Vant聊天模板|nuxt.js仿微信界面|红包|朋友圈
  7. 【编程规范】 后端API接口设计编写与文档编写参考
  8. C++中的防卫式声明
  9. js 获取移动端设备类型及系统版本号
  10. 【计算机网络】Socket聊天室程序