[SDUT](2088)refresh的停车场 ---栈和队列
来源:互联网 发布:linux vi 搜索关键字 编辑:程序博客网 时间:2024/05/16 14:56
Problem Description
refresh最近发了一笔横财,开了一家停车场。由于土地有限,停车场内停车数量有限,但是要求进停车场的车辆过多。当停车场满时,要进入的车辆会进入便道等待,最先进入便道的车辆会优先
进入停车场,而且停车场的结构要求只出去的车辆必须是停车场中最后进去的车辆。现告诉你停车场容量N以及命令数M,以及一些命令(Add num 表示车牌号为num的车辆要进入停车场或便道,
Del 表示停车场中出去了一辆车,Out 表示便道最前面的车辆不再等待,放弃进入停车场)。假设便道内的车辆不超过1000000.
Input
输入为多组数据,每组数据首先输入N和M(0< n,m <200000),接下来输入M条命令。
Output
输入结束后,如果出现停车场内无车辆而出现Del或者便道内无车辆而出现Out,则输出Error,否则输出停车场内的车辆,最后进入的最先输出,无车辆不输出。
Example Input
2 6
Add 18353364208
Add 18353365550
Add 18353365558
Add 18353365559
Del
Out
Example Output
18353365558
18353364208
解题新知:
理解题意后,用栈和队列模拟就可以,关键是把题意理解,条件分清楚就可以。
AC代码:
#include<iostream>#include<queue>#include<cstdio>#include<stack>#include<cstring>using namespace std;int main(){ char com[5]; long long num; int n,m; int flag; while(scanf("%d %d",&n,&m)!=EOF) { flag = 0; queue<long long>pass; stack<long long>park; for(int i=0;i<m;i++) { scanf("%s",com); if(strcmp(com,"Add")==0) scanf("%lld",&num); if(strcmp(com,"Add")==0) { if(park.size()!=n) park.push(num); else pass.push(num); } if(strcmp(com,"Del")==0) { if(!park.empty() && !pass.empty()) { park.pop(); park.push(pass.front()); } else flag = 1; } if(strcmp(com,"Out") == 0) { if(!pass.empty()) { pass.pop(); } else flag = 1; } } if(flag) printf("Error\n"); else { while(!park.empty()) { printf("%lld\n",park.top()); park.pop(); } } } return 0;}
阅读全文
0 0
- [SDUT](2088)refresh的停车场 ---栈和队列
- SDUT -refresh的停车场(栈和队列)
- SDUT 2088 refresh的停车场
- SDUT 2088 refresh的停车场
- refresh的停车场 SDUT 2088
- SDUT 2088 refresh的停车场
- sdut oj2088 refresh 的停车场(栈和队列的混合应用)
- sdut 2088 数据结构实验之栈与队列十一:refresh的停车场
- refresh的停车场 SDUT
- SDUT OJ refresh的停车场
- acm sdut refresh的停车场
- refresh的停车场(栈和队列的STL)
- 栈和队列的使用 refresh的停车场
- SDOTOJ2088 refresh的停车场(栈和队列)
- refresh的停车场 (栈+队列)
- 栈与队列--refresh的停车场
- refresh的停车场(栈+队列)
- 队列实验refresh的停车场
- 字节流与字符流的区别详解
- 工作日常记录 2017-09-22
- 【python+autohotkey】优雅地在markdown中插入图片
- Linux安装mysql
- TCP/IP的原理与介绍
- [SDUT](2088)refresh的停车场 ---栈和队列
- MySQL学习笔记
- Asp.Net上传文件
- spring cloud config非对称加密不能自动解密
- php强化练习(1)——数组
- 【NOIP模板】 线段树
- 学习安装unik环境——过程一
- hadoop安装完后打开网页http://localhost:50070/ 没反应
- (2)学习SrpingBoot 之 返回Json数据