zhangz 2015-09-04 06:07:01
点我顶贴
收藏
删除
测试点1 Accepted / 1ms / 12396kB
测试点2 Accepted / 3ms / 12396kB
测试点3 Accepted / 8ms / 12396kB
测试点4 Accepted / 36ms / 12396kB
测试点5 Accepted / 46ms / 12396kB
测试点6 Accepted / 84ms / 12396kB
测试点7 Accepted / 79ms / 12396kB
测试点8 Accepted / 88ms / 12396kB
测试点9 Accepted / 76ms / 12396kB
测试点10 Accepted / 85ms / 12396kB
#include <stdlib.h>
#include <iostream>
#include <vector>
#include <queue>
#include <functional>
using namespace std;
int main() {
priority_queue<int, vector<int>, greater<int> > fruit;
int c;
cin >> c;
int i;
int t;
long long power = 0;
for (i = 0;i < c;i++) {
cin >> t;
fruit.push(t);
}
while (c != 1)
{
i = fruit.top();
fruit.pop();
t = fruit.top();
fruit.pop();
power += i + t;
fruit.push(i + t);
c--;
}
cout << power;
return 0;
}