讨论 / C艹 30行STL优先队列过,不要重复发明轮子。。。
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;

}

查看更多回复
提交回复