HDU 1702 ACboy needs your help again!
题解:栈和队列的基本运用,熟练一下STL。
#include <iostream> #include <stack> #include <queue> using namespace std; int main(){ int t; scanf("%d",&t); while(t--){ int n,m; string str; cin>>n>>str; if(str=="FIFO"){ queue q; while(n--){ cin>>str; if(str=="IN")cin>>m,q.push(m); else{ if(q.empty())puts("None"); else printf("%d\n",q.front()),q.pop(); } } if(!q.empty())q.pop(); } else{ stack s; while(n--){ cin>>str; if(str=="IN")cin>>m,s.push(m); else{ if(s.empty())puts("None"); else printf("%d\n",s.top()),s.pop(); } } if(!s.empty())s.pop(); } } return 0 ; }
愿你出走半生,归来仍是少年