提问???(已解决)
完全符合蓝桥杯官网的 input 和 output,为什么一个测试点都没有过
sum 要初始化,因为不是赋值,而是不断相加,所以 sum 已经加上了未知的值
#include<iostream>
#include <queue>
using namespace std;
int main() {
priority_queue<int, vector<int>, greater<int> > p;
int n, temp, sum;
cin >> n;
for (int i = 0; i < n; ++i) {
cin >> temp;
p.push(temp);
}
while (p.size() != 1) {
temp = p.top();
p.pop();
temp += p.top();
sum += temp;
p.pop();
p.push(temp);
}
cout << sum;
return 0;
}