1 条题解

  • 0
    @ 2022-08-10 16:39:55

    #include <bits/stdc++.h> //万能头
    using namespace std;
    int main() {
    int num, i,x = 0,ans = 0;
    priority_queue<int,vector<int>, greater<int> >p; //greater让根节点最小
    cin >> num;
    for (i = 0;i < num;i++) {
    cin >> x;
    p.push(x); //放入数字
    }
    while (p.size() != 1) {
    x = p.top();
    p.pop();
    x += p.top(); //将最大的两个相加
    p.pop();
    p.push(x); //将和放入队列
    ans += x;
    }
    cout << ans << endl; //输出答案
    }

  • 1

信息

ID
1162
难度
5
分类
贪心 点击显示
标签
递交数
155
已通过
48
通过率
31%
上传者