解题思路:
注意事项:
参考代码:
#include<queue> #include<cstdio> #include<iostream> #include<algorithm> using namespace std; int main(void) { priority_queue<int,vector<int>,greater<int> >q; int n,data; cin >> n; for(int i=1;i<=n;i++) { cin>>data; q.push(data); } int ans = 0; while(q.size()>1) { int a = q.top(); q.pop(); int b = q.top(); q.pop(); ans += a+b; q.push(a+b); } printf("%d",ans); return 0; }
0.0分
0 人评分