摘要

题目链接 难度等级 完成状态 完成分数 最后编辑时间 需要注意
合并果子 ★☆☆☆☆ 答案正确 100 2015-7-19 17:07:25

代码

1063.cpp代码已折叠
展开折叠内容
显示/移除行号
  1. #include<cstdio>
  2. #include<algorithm>
  3. #include<iostream>
  4. #include<set>
  5. #include<queue>
  6. using namespace std;
  7. int n;
  8. priority_queue<int,vector<int>,greater<int> >u;
  9. int main(){
  10. cin>>n;
  11. for(int i=1;i<=n;++i)
  12. {
  13. int a;
  14. cin>>a;
  15. u.push(a);
  16. }
  17. int ans=0;
  18. while(u.size()>1)
  19. {
  20. int a=u.top();//每次合并两个最小的果子//
  21. u.pop();
  22. a+=u.top();
  23. u.pop();
  24. u.push(a);//生成一堆新果子//
  25. ans+=a;//计算体力//
  26. }
  27. cout<<ans<<endl;
  28. }
  29.  

著作权声明[编辑]

关于[编辑]