营救嘉然小姐

一、题目

牛子爷的嘉然小姐被私生饭绑架了
牛子爷特别喜欢看嘉然小姐的直播,希望能把嘉然小姐抢回来。
牛子爷杀进了私生饭的窝点,私生饭出了一道难题给牛子爷,如果答不出来,那他们就要把嘉然小姐独占。
问题就在墙上:
每个问题的第一行都有一个整数 N(有N个命令),还有 "FIFO" 或 "FILO".("FIFO"代表 "First In First Out"(先进先出), 并且 "FILO" 代表 "First In Last Out"(先进后出)).
接下来 N 行, 每行都是"IN M" 或者 "OUT M", (M 代表一个整数).
得到的输出答案就是绑嘉然小姐的密码锁的密码。作为一个合格的嘉心糖,牛子爷一定会破出这个密码,继续看嘉然小姐的直播。

Input

包含多组输入
第一行包含一个整数,代表组数
接下来的输入如描述所述

Output

每得到一个 "OUT", 你必须根据 "FIFO" 或 "FILO"的原则,立刻输出一个整数, 或者如果还没有得到任何整数的话就输出 "None"

Sample Input

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

Sample Output

1
2
2
1
1
2
None
2
3

二、分析

模拟栈和队列,不同的情况选择使用栈或队列。

#include
#include
#include
#include
using namespace std;
int main()
{int T;cin>>T;stacks2;queues;while(T--){while(!s.empty()) s.pop();while(!s2.empty()) s2.pop();int N;char sign[10];cin>>N>>sign;char ope[5];int num;if(strcmp(sign,"FIFO")==0){for(int i=0;i>ope;if(strcmp(ope,"IN")==0){cin>>num;s.push(num);}else{if(s.size()>0){cout<>ope;if(strcmp(ope,"IN")==0){cin>>num;s2.push(num);}else{if(s2.size()>0){cout<


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部