#aBC212D. [ABC212D] Querying Multiset
[ABC212D] Querying Multiset
AT_abc212_d [ABC212D] Querying Multiset
题目描述
高桥君有许多没有写字的球和一个袋子。最开始,袋子是空的,高桥君将进行 次操作。每次操作属于以下三种之一:
- 操作 :在一个还没有写字的球上写上整数 ,然后把它放进袋子。
- 操作 :对袋子里所有的球,将其上写的数都加上 。
- 操作 :从袋子里取出写有最小数字的球(如果有多个,任选一个),记录下这个数字,然后把这个球丢弃。
给定每次操作的类型 以及操作 、 时的 ,请按顺序输出每次操作 时记录下的数字。
输入格式
输入通过标准输入给出。
第一行为 。
接下来的 行,每行表示一次操作 ,格式如下之一:
其中 表示操作类型。如果 或 ,则后面跟一个用空格分隔的整数 。
输出格式
对于 次操作中每一次 的操作,按顺序输出记录下的数字,每个数字占一行。
输入输出样例 #1
输入 #1
5
1 3
1 5
3
2 2
3
输出 #1
3
7
输入输出样例 #2
输入 #2
6
1 1000000000
2 1000000000
2 1000000000
2 1000000000
2 1000000000
3
输出 #2
5000000000
说明/提示
限制条件
- 所有输入均为整数。
- 至少存在一次 的操作。
- 每次 操作前,袋子里至少有一个球。
样例解释 1
高桥君按如下方式进行操作:
- 把写有 的球放入袋子。
- 把写有 的球放入袋子。
- 现在袋子里有写有 和 的球,取出较小的 并记录,然后丢弃。
- 现在袋子里只剩写有 的球,将其数字加上 变为 。
- 现在袋子里只剩写有 的球,取出并记录 ,然后丢弃。
因此,按顺序输出 和 。
样例解释 2
请注意,答案可能超出 位整数的范围。
由 ChatGPT 4.1 翻译