- /*
- 沒啥好說的。list的練習
- 題目描述
- ACboy was kidnapped!!
- he miss his mother very much and is very scare now.You can't image how dark the room he was put into is, so poor :(.
- As a smart ACMer, you want to get ACboy out of the monster's labyrinth.But when you arrive at the gate of the maze, the monste say :" I have heard that you are very clever, but if can't solve my problems, you will die with ACboy."
- The problems of the monster is shown on the wall:
- Each problem's first line is a integer N(the number of commands), and a word "FIFO" or "FILO".(you are very happy because you know "FIFO" stands for "First In First Out", and "FILO" means "First In Last Out").
- and the following N lines, each line is "IN M" or "OUT", (M represent a integer).
- and the answer of a problem is a passowrd of a door, so if you want to rescue ACboy, answer the problem carefully!
- */
- #include <cstdio>
- #include <cmath>
- #include <cstdlib>
- #include <ctime>
- #include <iostream>
- #include <cmath>
- #include <algorithm>
- #include <numeric>
- #include <list>
- #include <utility>
- #include <cstring>
- #include <vector>
- #include <queue>
- #include <map>
- #include <string>
- #include <memory.h>
- using namespace std;
- #define inf 0x3f3f3f3f
- #define MAXN 1000
- #define clr(x,k) memset((x),(k),sizeof(x))
- #define cpy(x,k) memcpy((x),(k),sizeof(x))
- #define Base 10000
- #define max(a,b) ((a)>(b)?(a):(b))
- #define min(a,b) ((a)<(b)?(a):(b))
- int main(){
- // freopen("1702.in","r",stdin);
- list<int> li;
- char s[100];
- int t,n,num;
- scanf("%d",&t);
- while(t--){
- scanf("%d %s",&n,s);
- li.clear();
- if(!strcmp("FIFO",s)){
- for(int zz = 0;zz < n;zz++){
- scanf("%s",s);
- if(s[0]=='I'){
- scanf("%d",&num);
- li.push_back(num);
- }else{
- if(li.empty()){
- printf("None\n");
- }
- else{
- printf("%d\n",li.front());
- li.pop_front();
- }
- }
- }
- }else{
- for(int zz = 0;zz < n;zz++){
- scanf("%s",s);
- if(s[0]=='I'){
- scanf("%d",&num);
- li.push_back(num);
- }else{
- if(li.empty()){
- printf("None\n");
- }else{
- printf("%d\n",li.back());
- li.pop_back();
- }
- }
- }
- }
- }
- return 0;
- }