上虞市建设风机厂网站,网络用户管理系统,网站服务公司人工成本进什么费用,陕西省建设网官方网站优先队列 优先级队列是一种数据结构#xff0c;其中保存了一组数据 S#xff0c;其中每个元素都有一个键#xff0c;并执行以下操作#xff1a;
insert(S, k)#xff1a;将元素k插入集合S extractMax(S)#xff1a;从S中取出S中key最大的元素并返回其值 创建一个程序其中保存了一组数据 S其中每个元素都有一个键并执行以下操作
insert(S, k)将元素k插入集合S extractMax(S)从S中取出S中key最大的元素并返回其值 创建一个程序为优先级队列 S 插入 (S, k) 和提取 Max (S)。这里队列的元素是一个整数它本身被视为一个键。
输入 多条指令被赋予优先级队列 S。每条指令都以插入 k、提取或结束的形式在一行中给出。其中 k 表示要插入的整数。
end 指令标志着输入的结束。
输出 对于每个提取命令在一行输出从优先级队列 S 中提取的值。
约束 指令数不超过2,000,000。 0 ≤ k ≤ 2,000,000,000
输入样例 insert 8 insert 2 extract insert 10 extract insert 11 extract extract end 输出样例 8 10 11 2 #include iostream
#include vector
#include string
#include queueusing namespace std;int main() {priority_queueint a;string c;int v;while(cinc){if(cinsert){cinv;a.push(v);}else if(cextract){if(!a.empty()){couta.top()endl;a.pop();}}else if(cend){break;}}return 0;
}