标签:
Description
Input
Output
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
题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=1702
*******************************************
题意:题意比较清晰,FIFO则先进先出,FILO则先进后出
分析:简单的队列和栈的应用就好
AC代码
1 #include<stdio.h> 2 #include<string.h> 3 #include<math.h> 4 #include<queue> 5 #include<algorithm> 6 #include<time.h> 7 #include<stack> 8 using namespace std; 9 #define N 1000 10 #define INF 0x3f3f3f3f 11 12 int main() 13 { 14 int T,i,a,n; 15 char s[N],str[N]; 16 17 scanf("%d", &T); 18 19 while(T--) 20 { 21 scanf("%d %s", &n , s); 22 23 if(s[2]==‘F‘)///存入队列 24 { 25 queue<int >Q; 26 for(i=0;i<n;i++) 27 { 28 scanf("%s", str); 29 if(str[0]==‘I‘) 30 { 31 scanf("%d", &a); 32 Q.push(a); 33 } 34 else 35 { 36 if(Q.empty()) 37 printf("None\n"); 38 else 39 { 40 int x=Q.front(); 41 Q.pop(); 42 printf("%d\n", x); 43 } 44 } 45 } 46 } 47 else 48 { 49 stack<int >P; 50 for(i=0;i<n;i++) 51 { 52 scanf("%s", str); 53 54 if(str[0]==‘I‘) 55 { 56 scanf("%d",&a); 57 P.push(a); 58 } 59 else 60 { 61 if(P.empty()) 62 printf("None\n"); 63 else 64 { 65 int x=P.top(); 66 P.pop(); 67 printf("%d\n", x); 68 } 69 } 70 } 71 } 72 } 73 74 return 0; 75 }
HDU - 1702 ACboy needs your help again!(栈和队列)
标签:
原文地址:http://www.cnblogs.com/weiyuan/p/5787134.html