问题1739--治疗队列

1739: 治疗队列

时间限制: 1 Sec  内存限制: 128 MB
提交: 23  解决: 15
[提交] [状态] [讨论版] [命题人:]

题目描述

政府终于解决了全民医保的问题。现在每个人不论贫富,将有相同的医疗保障水平。
但也存在一个小问题:全国所有的医院都被浓缩成一个位置,一次只能服务一个人。别担心!将有一个公平、高效的计算机系统来决定谁会被服务。请你编程实现这个系统。
每一个公民都会被分配一个唯一的编号,编号从1到P(其中P是当前人口的数目)。人们将被放入一个队列中,1在2的前面,2在3的前面,以此类推。医院将按这个队列的顺序一个接一个地处理患者。一旦一个公民被服务,他就会立即从队列首都被移除,加到队尾。
当然,有时会发生突发事件:如果你被压路机碾过,你不可能等到半个国家的人被检查之后才被救治!所以,对于这些罕见的情况,就要有一条加快指令,可以把一个人排列队列的前面。每个人的相对顺序将保持不变。
给出处理序列和若干加快指令,输出被医院治疗的公民的顺序。

输入

至多包含10个测试用例。每个测试用例的第一行给出P,表示国家的人口数(1≤P≤1000000000),C表示加快指令的数目(1≤C≤1000)。
接下来的C行每行包含一条指令,“N”表示下一个公民进医院,“Ex”表示公民x被加快处理,移到队列首部。
最后一个测试用例之后,给出包含两个0的一行。

输出

对于每个测试用例,输出序列号,然后对每个“N”指令,输出一行,给出要被治疗的公民。详细情况看样例的输入输出。

样例输入 Copy

3 6
N
N
E 1
N
N
N
10 2
N
N
0 0

样例输出 Copy

Case 1:
1
2
1
3
2
Case 2:
1
2

来源/分类