思路详见之前的贪心专题,用优先队列来代替之前的插入排序,效率为O(nlogn)

 #include<iostream>
#include<cstdio>
#include<queue>
using namespace std;
const int MAXN=+;
int l[MAXN]; int main()
{
int n;
long long ans=;
priority_queue<int,vector<int>,greater<int> > pque;//C++总是把两个连续的>看作右移位运算符,因此会导致错误,要加空格
scanf("%d",&n);
for (int i=;i<n;i++)
{
scanf("%d",&l[i]);
pque.push(l[i]);
}
while (pque.size()>)
{
int a=pque.top();pque.pop();
int b=pque.top();pque.pop();
ans+=a+b;
pque.push(a+b);
}
cout<<ans<<endl;
return ;
}

最新文章

  1. A/D转换实验
  2. ruby4种比较符号
  3. response小结(一)——用response向客户端输出中文数据(乱码问题分析)
  4. I.MX6 android BatteryService jni hacking
  5. Python安装模块出错(ImportError: No module named setuptools)解决方法
  6. 去除VS2010中中文注释下的红色波浪线
  7. 转:Eclipse Kepler已支持Java 8
  8. linux下创建可引导的U盘系统,使用dd命令进行Linux的ghost
  9. 防止微信浏览器video标签全屏的问题
  10. javascript自制函数图像生成器
  11. 怎么单独为ionic2应用的某一组件设置两个平台一致的样式
  12. 饮冰三年-人工智能-linux-07 硬盘分区、格式化及文件系统的管理
  13. java.lang.ClassCastException: com.sun.proxy.$Proxy* cannot be cast to***
  14. Gnome增加消息提醒extension ( Fedora 28 )
  15. Java_myBatis_全局配置文件
  16. HDU5730
  17. Graph-BFS-Fly-图的广度优先遍历-最小转机问题
  18. 图文解析Spark2.0核心技术(转载)
  19. sqoop操作之ETL小案例
  20. [Axiom 3D]3.SceneManager场景管理器

热门文章

  1. C++之容器(关联容器)
  2. 手把手教你写Linux设备驱动---中断(三)--workqueue实现(基于友善之臂4412开发板) 【转】
  3. linux-open-source-development-tools【重点】
  4. 安装:python+webdriver环境
  5. popup menu案例,无说明只代码
  6. 关于springMVC转换json出现的异常
  7. HDU 3480 Division(斜率DP裸题)
  8. Git 分支 - 分支的新建
  9. C语言 ,两个字符串参数,判断是否包含另一个字符串,返回所在位置
  10. Oracle 通用存储过程