解题思路:
注意事项:
参考代码:
#include <iostream> #include <queue> #include <cstdio> using namespace std; const int maxn = 210; priority_queue<int, vector<int>, greater<int> > q; int main(void) { int n; cin >> n; for(int i = 0; i < n; i++) { int tmp; cin >> tmp; q.push(tmp); } int x,y,ans = 0; while(q.size() > 1) //当队列中的元素个数大于等于2时 { x = q.top(); q.pop(); y = q.top(); q.pop(); q.push(x+y); ans += (x + y); } cout << ans; return 0; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题5.6 (C++代码)浏览:738 |
C语言程序设计教程(第三版)课后习题7.1 (C++代码)浏览:690 |
点我有惊喜!你懂得!浏览:4109 |
C语言训练-舍罕王的失算 (C语言代码)浏览:1034 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:974 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:468 |
C语言训练-大、小写问题 (C语言代码)浏览:2357 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:745 |
C语言训练-阶乘和数* (C语言代码)-------- 呆板写法浏览:1362 |
三角形 (C++代码)递推浏览:760 |