时间限制: 1 s
 空间限制: 128000 KB
 题目等级 : 钻石 Diamond
 
题目描述 Description

在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。

每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。

因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体力。假定每个果子重量都为1,并且已知果子的种类数和每种果子的数目,你的任务是设计出合并的次序方案,使多多耗费的体力最少,并输出这个最小的体力耗费值。

例如有3种果子,数目依次为1,2,9。可以先将1、2堆合并,新堆数目为3,耗费体力为3。接着,将新堆与原先的第三堆合并,又得到新的堆,数目为12,耗费体力为12。所以多多总共耗费体力=3+12=15。可以证明15为最小的体力耗费值。

输入描述 Input Description

输入包括两行,第一行是一个整数n(1<=n<=10000),表示果子的种类数。第二行包含n个整数,用空格分隔,第i个整数ai(1<=ai<=20000)是第i种果子的数目。

输出描述 Output Description

输出包括一行,这一行只包含一个整数,也就是最小的体力耗费值。输入数据保证这个值小于231。

样例输入 Sample Input


1 2 9

样例输出 Sample Output

15

数据范围及提示 Data Size & Hint

对于30%的数据,保证有n<=1000: 
对于50%的数据,保证有n<=5000; 
对于全部的数据,保证有n<=10000。

分类标签 Tags 点此展开

 
通过4 k
 
提交12 k
 
35%

通过率
Summary

AC
38%
WA
39%
TLE
9%
MLE
1%
RE
14%
  • 46831 AC
  • 48492 WA
  • 11103 TLE
  • 664 MLE
  • 16985 RE
 
 #include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<queue>
using namespace std; priority_queue<int>que;
int x,tot,n,tmp; int main()
{
cin>>n;
for(int i=;i<=n;i++)
{
cin>>x;
que.push(-x);
}
for(int i=;i<n;i++)
{
tmp=que.top();
tot-=que.top();
que.pop();
tmp+=que.top();
tot-=que.top();
que.pop();
que.push(tmp);
}
cout<<tot;
return ;
}

最新文章

  1. Bootstrap JavaScript插件
  2. 深入理解定时器系列第二篇——被誉为神器的requestAnimationFrame
  3. Apple Reject
  4. JavaWeb 5 Tomcat
  5. MySQL: ON DUPLICATE KEY UPDATE 用法 避免重复插入数据
  6. xcode5下cocos2dx横竖屏设置
  7. SelectSingleNode和SelectNodes区别
  8. ArcMap10.1无法保存编辑的内容
  9. Styles and Themes
  10. [置顶] Ubuntu 12.04以上如何恢复GNOME传统界面
  11. Android 仿微信滑动删除
  12. JAVA基础:自己构造一个按递增排列的数组,用户输入一个数,插入适当位置
  13. 【Alpha】阶段总结报告
  14. DICOM医学图像处理:WEB PACS初谈四,PHP DICOM Class
  15. Java的接口和抽象类
  16. java 坑
  17. 1008 Elevator (20)(20 point(s))
  18. Git创建本地分支并关联远程分支
  19. PHP中关于取模运算及符号
  20. POJ 3977:Subset(折半枚举+二分)

热门文章

  1. 响应式Web设计- Viewport
  2. lru缓存测试类
  3. Django2.x中url路由的path()与re_path()参数解释
  4. verilog random使用
  5. Codeforces C. Sonya and Problem Wihtout a Legend(DP)
  6. BFS:UVa201-Squares
  7. nw335 debian sid x86-64 -- 6 第三方驱动
  8. bat 获取命令执行后的多个返回值,并取最后一个
  9. Java-转换原始类型为一个字符串
  10. Jmeter性能指标分析-下载了服务器监控插件的各个组件的功能介绍