文章
1
粉丝
10
获赞
0
访问
563
使用优先队列
啊啊啊啊,服辣!!题目说输入多组数据。。。所以要在最外面while(cin>>n)
de了好久 Orzzz
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n;
while(cin>>n)
{
priority_queue<int,vector<int>,greater<int>>q;
int res=0;
//入队
while(n--)
{
int a;
cin>>a;
q.push(a);
}
while(q.size()>1)
{
int a=q.top();
q.pop();
a+=q.top();
q.pop();
res+=a;
q.push(a);
}
cout<<res<<'\n';
}
}
登录后发布评论
暂无评论,来抢沙发