欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

优先队列

程序员文章站 2022-03-31 08:08:44
...

优先队列

#include<bits/stdc++.h>
using namespace std;
priority_queue<int ,vector<int>,greater<int> >q;
int main()
{
int n,sum=0;
cin>>n;
for(int i=1;i<=n;i++)
{
    int a;
    cin>>a,q.push(a);
}
while(q.size()>=2)
{
    int i=q.top();
    q.pop();
    int j=q.top();
    q.pop();
    sum+=i+j;
    q.push(i+j);
}
cout<<sum<<endl;
    return 0;
}