3125 - 堆的操作

题目描述

定义一个数组,初始化为空。在数组上执行两种操作:

1、增添 1 个元素,把 1 个新的元素放入数组。

2、输出并删除数组中最小的数。

使用堆结构实现上述功能的高效算法。

输入

第一行输入一个整数 t ,代表测试数据的组数。

对于每组测试数据,第一行输入一个整数 n ,代表操作的次数。

每次操作首先输入一个整数 type

type=1 ,增添操作,接着输入一个整数 u ,代表要插入的元素。

type=2 ,输出删除操作,输出并删除数组中最小的元素。

输出

每次删除操作输出被删除的数字。

样例

输入

2
5
1 1
1 2
1 3
2
2
4
1 5
1 1
1 7
2

输出

1
2
1
说明

【数据范围】

1 \leq n \leq 100000

来源

电子学会等级考试七级

标签
题目参数
时间限制 1 秒
内存限制 128 MB
提交次数 8
通过人数 4
金币数量 2 枚
难度 基础


上一题 下一题