HDOJ 1702 ACboy needs your help again!
2016-07-25 11:08
363 查看
ACboy needs your help again!
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5502 Accepted Submission(s): 2866
[align=left]Problem Description[/align]
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!
[align=left]Input[/align]
The input contains multiple test cases.
The first line has one integer,represent the number oftest cases.
And the input of each subproblem are described above.
[align=left]Output[/align]
For each command "OUT", you should output a integer depend on the word is "FIFO" or "FILO", or a word "None" if you don't have any integer.
[align=left]Sample Input[/align]
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
[align=left]Sample Output[/align]
1
2
2
1
1
2
None
2
3代码:
#include<stdio.h> #include<string.h> #include<queue> #include<stack> using namespace std; void que(int n) { int a,b; char str[5]; queue<int>q; while(n--) { scanf("%s",str); if(strcmp(str,"IN")==0) { scanf("%d",&a); q.push(a); //入队列 } else { if(q.empty()) printf("None\n"); else { b=q.front();//取队首元素 printf("%d\n",b); q.pop();//删除队首元素; } } } while(!q.empty()) { q.pop(); } } void sta(int n) { int a,b; char str[5]; stack<int>s; while(n--) { scanf("%s",str); if(strcmp(str,"IN")==0) { scanf("%d",&a); s.push(a);//入栈 } else { if(s.empty()) printf("None\n"); else { b=s.top();//返回栈顶元素的值; printf("%d\n",b); s.pop();//删除栈顶元素; } } } while(!s.empty()) { s.pop(); } } int main() { int t,n; char str1[5]; scanf("%d",&t); while(t--) { scanf("%d %s",&n,str1); if(!strcmp(str1,"FIFO")) { que(n); } else { sta(n); } } return 0; }
相关文章推荐
- 2012杭州现场赛 H - Friend Chains dijkstra+邻接表
- Failed to read artifact descriptor for xxx:jar 和Missing artifact
- 区块链:起源、原理及应用
- Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.5:compile
- jedis高版本的JedisPoolConfig没有maxActive和maxWait
- 【HDU5733 2016 Multi-University Training Contest 1K】【计算几何 公式做法】tetrahedron 四面体内切球圆心与半径
- 【HDU5732 2016 Multi-University Training Contest 1J】【树哈希模板 无根树的同构】Subway 对应两棵树的匹配关系
- 【HDU5731 2016 Multi-University Training Contest 1I】【轮廓线DP+容斥】Solid Dominoes Tilings nm棋盘1x2多边形填充稳定方案
- 【HDU5729 2016 Multi-University Training Contest 1G】【状压DP 容斥】Rigid Frameworks 刚性图 nm二分图的联通方案数
- 【HDU5728 2016 Multi-University Training Contest 1F】【数论+迭代 欧拉函数线性筛+积性递归】PowMod 欧拉函数积性性质+无穷幂迭代
- 【HDU5727 2016 Multi-University Training Contest 1E】【状压DP做法 匈牙利匹配做法】Necklace n阳n阴排成环 特定相邻会抑郁 问最少抑郁阳球数
- 【HDU5726 2016 Multi-University Training Contest 1D】【gcd的下降性质 STL-map】GCD 多少段区间gcd等于给定区间gcd
- 【HDU5725 2016 Multi-University Training Contest 1C】【最短路 曼哈顿距离+贪心 前缀和】Game 有特殊守卫地图中所有空格点的最短路之和
- 【HDU5724 2016 Multi-University Training Contest 1B】【博弈 SG函数】Chess 棋子跳棋向右移 先后手胜负博弈
- 【HDU5723 2016 Multi-University Training Contest 1A】【最小生成树 + 简单算贡献】 Abandoned country 最小生成树的链长之和
- 2015北京现场赛UVALive 7263 Today Is a Rainy Day 【bfs】
- RAID阵列的初始化与管理
- Waiting for possible shutdown message on port 4445
- 雷鸣决定第三次创业,做一件人工智能和教育结合的事,成立一家叫“快乐智慧”的公司
- 动态规划 III——A - Railway tickets