P1026 - 优先队列
题目描述
优先队列是一种数据结构,它维护着一组元素S,每个元素都有一个关联的值(键),并支持以下操作:
insert(S, k):插入一个元素k到集合S中extractMax(S): 从S中删除键值最大的元素并返回该键值
请编写一个程序,对优先队列S执行insert(S, k)和extractMax(S)。
优先队列中存储的是int型整数,这些整数也是优先队列的键。
输入格式
对优先队列S输入多条命令,命令以insert k、extract、end的形式给出,每个命令占1行,这里的k代表插入的整数,end代表命令输入完毕
输出格式
对于每一个extract命令,输出一个从优先队列S中取出的值(最大的元素),每个值占1行
如果执行extract命令时,优先队列S中没有可以取出的元素时,忽略掉该命令即可不需要处理
输入输出样例
| 输入样例 | 输出样例 |
|---|---|
| insert 8 insert 2 extract insert 10 extract insert 11 extract extract extract extract end |
8 10 11 2 |
数据范围与提示
100%的数据:操作命令总数 <= 2000,插入到优先队列中的所有整数都在int表示范围内
测试点数目
共10个测试点,每个测试点10分
时间与内存限制
每个测试点时间:1000ms(1.0s),内存:256MiB
输入输出模式
本OJ支持两种输入输出模式
1. 标准输入输出模式:
直接从标准输入和标准输出读写数据,不需要使用freopen进行文件输入输出重定向
2. 文件输入输出模式(国内信奥赛输入输出模式):
从文件中读写数据,需要使用freopen进行输入输出重定向
本题输入文件名为:P1026.in,输出文件名为:P1026.out