#HX2876. 栈专题课堂题二:餐盘清洗2

提交2 通过1
通过率50%
时间限制1000ms
内存限制128MiB
    ID: 12837 传统题 1000ms 128MiB 尝试: 2 已通过: 1 难度: 普及- 上传者: 标签>C++c++编程题浩轩OJ迁移6级2025年寒假六级班题库

题目描述

题目描述

小珅同学又在清洗餐盘!这次为了让餐盘的清洗工作尽快结束,小珅同学会一次清洗多个餐盘!开始时,没有待清洗餐盘,之后会发生两种事件:

  1. 一个需要清洗的餐盘:将编号为 a 的餐盘放在这叠餐盘顶端。用一个字符串 dish 和一个正整数 a 表示,dish 和 a 之间有一个空格。

  2. 清洗餐盘:清洗顶端的 k 个餐盘。如果餐盘数量大于等于 k 个,小珅同学取出顶端的 k 个餐盘,并按照取出的顺序依次清洗;如果餐盘数量少于 k 个,小珅同学就取出所有餐盘并依次清洗。用一个字符串 wash 和一个正整数 k 表示,wash 和 k 之间有一个空格。保证 wash 操作时至少有 1 个餐盘可以洗。

两种事件一共发生了 n 次,对每次 wash 操作,输出此次清洗的餐盘编号。

输入格式

第 1 行,一个正整数 n,为事件发生了次数;

接下来 n 行,每行表示一个事件,格式见题目描述。

输出格式

对每次 wash 操作,用一行输出此次清洗的所有餐盘编号。餐盘编号按照清洗顺序输出,数之间用空格分隔。

输入样例 #1

7
dish 1
dish 2
dish 3
wash 2
dish 4
dish 5
wash 3

输出样例 #1

3 2
5 4 1

输入样例 #2

2
dish 1
wash 10

输出样例 #2

1

输入样例 #3

5
dish 1
dish 2
dish 3
wash 2
wash 2

输出样例 #3

3 2
1

数据范围与约定

1≤n≤1000;1≤k≤1000;1≤a≤10^6