正经题解
2025-05-25 11:23:43
发布于:浙江
2阅读
0回复
0点赞
算法:优先队列
#include<iostream>
#include<queue>
using namespace std;
int n, a, b, c, t;
priority_queue<int, vector<int>, greater<int>> q;
int main() {
cin >> n;
for (int i = 0; i < n; ++i) {
cin >> a;
q.push(a);
}
while (q.size() > 1) {
a = q.top(); q.pop();
b = q.top(); q.pop();
c = a + b;
t += c;
q.push(c);
}
cout << t;
return 0;
}
全部评论 1
顶
2025-05-25 来自 浙江
0
有帮助,赞一个