1. 程式人生 > >Hdu-1072

Hdu-1072

std bits -1 簡單 pty one int 個數字 一行

題目描述:

首先輸入一個N;代表測試數據的個數;

然後每個測試數據的開頭第一行輸入一個n和一個命令(FIFO或FILO<就是先進先出或先進後出>)

然後是該測試數據的n行,每行包括“IN”加一個數字(代表入棧或入隊)或者一個“OUT”(代表出隊或出棧)

若已經是空的了遇到“OUT”命令時輸出“None”;

其實就是c++STL的隊列和棧的簡單應用;

代碼如下:

************************************************************************/

#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
while(n--){
int com_num,typ_num;
cin>>com_num;
string com;
cin>>com;
if(com=="FIFO"){
queue<int> q;
for(int i=0;i<com_num;i++){
cin>>com;
if(com=="IN"){
cin>>typ_num;
q.push(typ_num);
}
if(com=="OUT"){
if(q.empty()){
cout<<"None"<<endl;
}
else{
cout<<q.front()<<endl;
q.pop();
}
}
}
}
if(com=="FILO"){
stack<int> st;
for(int i=0;i<com_num;i++){
cin>>com;
if(com=="IN"){
cin>>typ_num;
st.push(typ_num);
}
if(com=="OUT"){
if(st.empty()){
cout<<"None"<<endl;
}
else{
cout<<st.top()<<endl;
st.pop();
}
}
}
}
}
return 0;
}

Hdu-1072