refresh的停车场(模拟)

refresh的停车场

Time Limit: 1000MS Memory limit: 65536K

题目描述

refresh最近发了一笔横财,开了一家停车场。由于土地有限,停车场内停车数量有限,但是要求进停车场的车辆过多。当停车场满时,要进入的车辆会进入便道等待,最先进入便道的车辆会优先

进入停车场,而且停车场的结构要求只出去的车辆必须是停车场中最后进去的车辆。现告诉你停车场容量N以及命令数M,以及一些命令(Add num 表示车牌号为num的车辆要进入停车场或便道,

Del 表示停车场中出去了一辆车,Out 表示便道最前面的车辆不再等待,放弃进入停车场)。假设便道内的车辆不超过1000000.

输入

输入为多组数据,每组数据首先输入N和M(0< n,m <200000),接下来输入M条命令。

输出

输入结束后,如果出现停车场内无车辆而出现Del或者便道内无车辆而出现Out,则输出Error,否则输出停车场内的车辆,最后进入的最先输出,无车辆不输出。

示例输入

2 6
Add 18353364208
Add 18353365550
Add 18353365558
Add 18353365559
Del
Out

示例输出

18353365558
18353364208
 1 #include<stdio.h>
 2 #include <string.h>
 3
 4 char str[4], num[100];
 5 char s[300010][40], q[100010][40];
 6 int n, m, top1, top2, fo;
 7
 8 int main()
 9 {
10     while(~scanf("%d%d",&n,&m))
11     {
12         int flag=1;
13         top1=0; //停车场的下标
14         top2=0; //便道的下标
15         fo=0; //从0开始遍历便道的下标
16
17         for(int i=1; i<=m; i++)
18         {
19             scanf("%s", str);
20             if(strcmp(str, "Add")==0)
21             {
22                 scanf("%s",num);
23                 if(top1<n)                    //如果停车厂未达到最大停车量
24                     strcpy(s[top1++], num);
25                 else                          //停车厂达到最大停车量,剩下的车辆进入便道
26                     strcpy(q[top2++], num);
27             }
28             else if(strcmp(str, "Del")==0)
29             {
30                 if(top1!=0)
31                 {
32                     top1--;
33                     if(fo < top2)
34                         strcpy(s[top1++], q[fo++]);
35                 }
36                 else
37                     flag=0;
38             }
39             else if(strcmp(str, "Out")==0)
40             {
41                 if(fo<top2)
42                     fo++;
43                 else
44                     flag=0;
45             }
46         }
47         if(flag)
48         {
49             for(int i=top1-1;i>=0;i--)
50                 printf("%s\n", s[i]);
51         }
52         else
53             printf("Error\n");
54     }
55     return 0;
56 }
 1 #include<stdio.h>
 2 #include <string.h>
 3
 4 char str[4], num[100];
 5 char s[300010][40], q[100010][40];
 6 int n, m, top1, top2, fo;
 7
 8 int main()
 9 {
10     while(~scanf("%d%d",&n,&m))
11     {
12         int flag=1;
13         top1=0; //停车场的下标
14         top2=0; //便道的下标
15         fo=0; //从0开始遍历便道的下标
16
17         for(int i=1; i<=m; i++)
18         {
19             scanf("%s", str);
20             if(strcmp(str, "Add")==0)
21             {
22                 scanf("%s",num);
23                 if(top1<n)                    //如果停车厂未达到最大停车量
24                     strcpy(s[top1++], num);
25                 else                          //停车厂达到最大停车量,剩下的车辆进入便道
26                     strcpy(q[top2++], num);
27             }
28             else if(strcmp(str, "Del")==0)
29             {
30                 if(top1!=0)
31                 {
32                     top1--;
33                     if(fo < top2)
34                         strcpy(s[top1++], q[fo++]);
35                 }
36                 else
37                     flag=0;
38             }
39             else if(strcmp(str, "Out")==0)
40             {
41                 if(fo<top2)
42                     fo++;
43                 else
44                     flag=0;
45             }
46         }
47         if(flag)
48         {
49             for(int i=top1-1;i>=0;i--)
50                 printf("%s\n", s[i]);
51         }
52         else
53             printf("Error\n");
54     }
55     return 0;
56 }
				
时间: 2024-10-29 05:22:04

refresh的停车场(模拟)的相关文章

SDOTOJ2088 refresh的停车场(栈和队列)

refresh的停车场 Time Limit:1000MS     Memory Limit:65536KB     64bit IO Format:%lld & %llu Submit Status Description refresh近期发了一笔横財,开了一家停车场.因为土地有限.停车场内停车数量有限,可是要求进停车场的车辆过多.当停车场满时,要进入的车辆会进入便道等待,最先进入便道的车辆会优先 进入停车场,并且停车场的结构要求仅仅出去的车辆必须是停车场中最后进去的车辆. 现告诉你停车场容

SDOTOJ2088 refresh的停车场

refresh的停车场 Time Limit:1000MS     Memory Limit:65536KB     64bit IO Format:%lld & %llu Submit Status Description refresh最近发了一笔横财,开了一家停车场.由于土地有限,停车场内停车数量有限,但是要求进停车场的车辆过多.当停车场满时,要进入的车辆会进入便道等待,最先进入便道的车辆会优先 进入停车场,而且停车场的结构要求只出去的车辆必须是停车场中最后进去的车辆.现告诉你停车场容量N

refresh的停车场(栈和队列的STL)

refresh的停车场 Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 refresh最近发了一笔横财,开了一家停车场.由于土地有限,停车场内停车数量有限,但是要求进停车场的车辆过多.当停车场满时,要进入的车辆会进入便道等待,最先进入便道的车辆会优先 进入停车场,而且停车场的结构要求只出去的车辆必须是停车场中最后进去的车辆.现告诉你停车场容量N以及命令数M,以及一些命令(Add num 表示车牌号为num的车辆要进入停车场或便

SDUT-2088_数据结构实验之栈与队列十一:refresh的停车场

数据结构实验之栈与队列十一:refresh的停车场 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description refresh最近发了一笔横财,开了一家停车场.由于土地有限,停车场内停车数量有限,但是要求进停车场的车辆过多.当停车场满时,要进入的车辆会进入便道等待,最先进入便道的车辆会优先 进入停车场,而且停车场的结构要求只出去的车辆必须是停车场中最后进去的车辆.现告诉你停车场容量N以及命令数M,以及一些命令(Add num 表

SDUT -refresh的停车场(栈和队列)

题目描写叙述 refresh近期发了一笔横財,开了一家停车场.因为土地有限,停车场内停车数量有限,可是要求进停车场的车辆过多. 当停车场满时,要进入的车辆会进入便道等待.最先进入便道的车辆会优先 进入停车场,并且停车场的结构要求仅仅出去的车辆必须是停车场中最后进去的车辆. 现告诉你停车场容量N以及命令数M,以及一些命令(Add num 表示车牌号为num的车辆要进入停车场或便道. Del 表示停车场中出去了一辆车,Out 表示便道最前面的车辆不再等待,放弃进入停车场).如果便道内的车辆不超过10

数据结构实验之栈与队列十一:refresh的停车场

Problem Description refresh最近发了一笔横财,开了一家停车场.由于土地有限,停车场内停车数量有限,但是要求进停车场的车辆过多.当停车场满时,要进入的车辆会进入便道等待,最先进入便道的车辆会优先 进入停车场,而且停车场的结构要求只出去的车辆必须是停车场中最后进去的车辆.现告诉你停车场容量N以及命令数M,以及一些命令(Add num 表示车牌号为num的车辆要进入停车场或便道, Del 表示停车场中出去了一辆车,Out 表示便道最前面的车辆不再等待,放弃进入停车场).假设便

SDUT OJ refresh的停车场

#include<iostream> #include<string> using namespace std; string a[20010],b[20010]; int main() { int n,m,i,flag; string x,y; while(cin>>n>>m) { flag=0; int top=0; int top1=0; int top2=0; for(i=0;i<m;i++) { cin>>x; if(x==&qu

(四)WebDriver API:控制浏览器及鼠标、键盘事件

参考文档:WebDriver官方文档,下载链接:http://download.csdn.net/detail/kwgkwg001/4004500 虫师:<selenium2自动化测试实战-基于python语言> 一.控制浏览器 webdriver主要提供操作页面上各种元素的方法,但它也提供操作浏览器的一些方法,例如控制浏览器大小.前进和后退等. 1.控制浏览器窗口大小 webdriver提供了set_window_size()方法来设置浏览器大小: # 控制浏览器大小 from seleni

数据结构实践项目——队列

本组项目针对<数据结构基础系列(3):线性表>中的7-12课: 7.队列的定义 8. 顺序队的存储及基本操作 9. 环形队列的存储及基本操作 10. 队列的链式存储结构及其基本运算的实现 11. 队列的应用-迷宫问题 12. 双端队列 [项目1 - 建立顺序环形队列算法库] 定义顺序环形队列存储结构,实现其基本运算,并完成测试. 要求: 1.头文件sqqueue.h中定义数据结构并声明用于完成基本运算的函数.对应基本运算的函数包括: void InitQueue(SqQueue *&q