c++优先队列用法
来源:互联网 发布:他知而自不知的我属于 编辑:程序博客网 时间:2024/06/05 01:51
头文件
< queue>
<functional>
priority_queue<int, vector<int>, greater<int> > q; //从小到大的优先级队列,可将greater改为less,即为从大到小
q.push() 插入一个元素
q.pop() 弹出队头元素
q.top() 队头元素
q.size() 队列长度
题意,一个队列每次合并最小的两个数,这两个数的和再次插入队列,重复直到队列只有一个数。
#include<iostream>#include<queue>#include<functional>using namespace std;int n;int s[100000];int nn;int main(){ cin >> n; nn = n; int i=0; int sum = 0; int a; int b; priority_queue<int, vector<int>, greater<int> > q; while (n--) { cin >> i; q.push(i); } if (nn == 1) { cout << q.top() << endl; return 0; } while (q.size()>1) { a = q.top(); q.pop(); b= q.top(); q.pop(); sum += (a+b); a += b; q.push(a); } cout << sum << endl; return 0;}
0 0
- 优先队列的用法
- 优先队列的用法
- 优先队列用法
- 优先队列用法
- 优先队列的用法
- 优先队列用法
- 优先队列用法
- 优先队列用法
- C++ 优先队列用法
- 优先队列用法
- 优先队列用法
- C++ 优先队列用法
- 优先队列用法
- 优先队列用法
- 优先队列用法
- 优先队列的用法
- 优先队列的用法
- 优先队列用法
- 七天使的通讯(angelus)
- strcpy()源代码
- 《程序员的自我修养》--目标文件有什么和ELF文件格式简述
- Cogs 1688. [ZJOI2008]树的统计Count(树链剖分+线段树||LCT)
- 顺序表和链表的比较
- c++优先队列用法
- Google C++单元测试框架---Gtest框架简介(译文)
- 问题四十五:怎么画ray tracing图形中的blending and joining surface
- Redis 源码解析 string内部实现原理之简单动态字符串SDS
- peak 选择何种数组
- Qt音频利用Phonon实现简单的音频播放
- python 3-1 如何实现可迭代对象iterable和迭代器对象iterator,__iter__,__getitem__
- 浏览器兼容性问题
- 小a和uim之大逃离_洛谷1373_dp