输入描述:

输入有多组数据。
每组第一行输入一个数n,接着输入n个叶节点(叶节点权值不超过100,2<=n<=1000)。

输出描述:

输出权值。

输入

5
1 2 2 5 9

输出

37

Solution

哈弗曼树板题。注意默认优先队列为大根堆,小根堆用priority_queue<int, vector<int>, greater<int>> Q;

#include <algorithm>
#include <cstdio>
#include <queue>
#include <iostream>
#include <vector>
using namespace std;
priority_queue<int, vector<int>, greater<int>> Q, Empty;
int main()
{int N;while (~scanf("%d", &N)){swap(Q, Empty);for (int i = 0; i < N; i++){int t;scanf("%d", &t);Q.push(t);}int ans = 0;while (Q.size() > 1){int a = Q.top();Q.pop();int b = Q.top();Q.pop();ans += (a + b);Q.push(a + b);}printf("%d\n", ans);}return 0;
}

牛客网 哈夫曼树 (大根堆、哈夫曼树)相关推荐

  1. 树的距离(牛客网树上主席树+dfs序)

    链接:https://ac.nowcoder.com/acm/problem/14415 来源:牛客网 题目描述 wyf非常喜欢树.一棵有根数树上有N个节点,1号点是他的根,每条边都有一个距离,而wy ...

  2. 黑白树(牛客网+树形dp)

    链接:https://ac.nowcoder.com/acm/problem/13249 来源:牛客网 题目描述 一棵n个点的有根树,1号点为根,相邻的两个节点之间的距离为1.树上每个节点i对应一个值 ...

  3. 牛客网 2018年全国多校算法寒假训练营练习比赛(第五场) H.Tree Recovery-完全版线段树(区间更新、区间求和)...

    H.Tree Recovery 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语言262144K 64bit IO Format: %lld 链接:https:/ ...

  4. 牛客网wannafly挑战赛13-E(线段树)

    链接:https://www.nowcoder.com/acm/contest/80/E 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言5242 ...

  5. 牛客网——歪脖子树下的灯

    牛客网--歪脖子树下的灯 题目链接:https://ac.nowcoder.com/acm/contest/24803/L 题目来源:牛客网2021年广东工业大学第11届腾讯杯新生程序设计竞赛(同步赛 ...

  6. [牛客网#35D 树的距离]离散化+线段树合并

    [牛客网#35D 树的距离]离散化+线段树合并 分类:Data Structure SegMent Tree Merge 1. 题目链接 [牛客网#35D 树的距离] 2. 题意描述 wyf非常喜欢树 ...

  7. 2018牛客网暑期ACM多校训练营(第十场)A Rikka with Lowbit (树状数组)

    链接:https://ac.nowcoder.com/acm/contest/148/A 来源:牛客网 Rikka with Lowbit 时间限制:C/C++ 5秒,其他语言10秒 空间限制:C/C ...

  8. 牛客网算法工程师能力评估

    牛客网算法工程师能力评估 题目来源:https://www.nowcoder.com/test/200/summary 1.递归算法x(x(8))需要调用几次函数x(int n)? class pro ...

  9. 2016面试整理--来源牛客网

    马上国庆节了,首先祝大家最后都能有个满意的offer,国庆几天好好养精蓄锐. 我经常在牛客群里水群,应该不少人看我眼熟的. 本人是一个杭州渣硕,本科也很一般,和211 985半点都粘不到,没有参加过A ...

  10. 牛客网错题集合之字符串(一)

    [不定项选择题] 已知一段文本有1382个字符,使用了1382个字节进行存储,这段文本全部是由a.b.c.d.e这5个字符组成,a出现了354次,b出现了483次,c出现了227次,d出现了96次,e ...

最新文章

  1. 潜移默化学会WPF--绘图 学习(一)
  2. 用控制台实现的计算器思路完成过程(一)
  3. 好文转载 Linux环境进程间通信(五): 共享内存(上)
  4. 面试官:知道时间轮算法吗?在Netty和Kafka中如何应用的?
  5. 我们又双叒搬家了!(附福利)
  6. 如何搭建一个简易的Web框架
  7. ZipOutputStream 用法 小计
  8. 算法复杂度分析(下)
  9. 八年级信息技术认识计算机网络,初二信息技术课名称:认识计算机网络.doc
  10. 赫尔维茨矩阵与matlab,第3章时域分析法剖析.ppt
  11. php访问oracle写sql不能换行
  12. C语言常见题目汇总(不断更新)(建议收藏)
  13. AI语音技术的应用与发展前景
  14. mongodb 什么比mysql快_MongoDB为什么比mysql效率高
  15. MAK代理激活的使用方法和注意事项
  16. android11下文件管理,华为文件管理器下载-华为文件管理器 安卓版v10.11.11.301-PC6安卓网...
  17. Photoshop图层模式中英文对照及解释
  18. 聊一聊阿里P8、P9及以上人的水平
  19. CentOS更改语言两种方式
  20. Python基础——流程控制之循环语句

热门文章

  1. 计算机的最新应用有哪些内容是什么,善用Wink,将电脑操作录屏为flash (更新图片)...
  2. 薛兆丰经济学思维研究:权利的经济学讨论
  3. 虚拟机VMware Workstation安装使用教程
  4. TunesKit Spotify Converter Mac(Spotify音乐转换工具) v1.5.1激活版
  5. 使用 GPG 为极狐GitLab git commit 签名
  6. 数据清洗是清洗什么?
  7. python读取灰度图_Python读取MRI并显示为灰度图像实例代码
  8. 图像处理之预处理方法
  9. opencv中meanshift和camshift函数的使用
  10. 智能识别收货地址 javascript