P1100 - 实现自己的优先队列

题目描述

基于数组实现自己的优先队列,实现下面的基本操作:

  1. createPriorityQueue,创建一个优先队列
  2. getTop,访问队首元素
  3. push,入队一个元素
  4. pop,出队队首元素

输入一组无序的整数,数值越大优先级越高(构建的是大顶堆优先队列),然后构建出优先队列

再依次访问队首元素、出队队首元素、访问队首元素、出队队首元素这样循环下去直到优先队列为空

输入格式

第1行,1个正整数n代表数组的大小

第2行,n个整数,数组中的元素,使用空格分隔

输出格式

1行,依次访问的优先队列的队首元素,使用空格分隔

输入输出样例

输入样例 输出样例
5
1 2 3 4 5
5 4 3 2 1

数据范围与提示

100%的数据:$1 \le n \le 250$,每个节点的值在int取值范围内

测试点数目

共10个测试点,每个测试点10分

时间与内存限制

每个测试点时间:1000ms(1.0s),内存:256MiB

输入输出模式

本OJ支持两种输入输出模式

1. 标准输入输出模式:
直接从标准输入和标准输出读写数据,不需要使用freopen进行文件输入输出重定向
2. 文件输入输出模式(国内信奥赛输入输出模式):
从文件中读写数据,需要使用freopen进行输入输出重定向
本题输入文件名为:P1100.in,输出文件名为:P1100.out