1125 Chain the Ropes (25 分)【难度: 一般 / 贪心 哈夫曼树】
https://pintia.cn/problem-sets/994805342720868352/problems/994805350316752896
用小根堆即可。
#include<bits/stdc++.h>
using namespace std;
int n,x;
priority_queue<double,vector<double>,greater<double>>heap;
int main(void)
{int n; cin>>n;while(n--) cin>>x,heap.push(x);while(heap.size()>=2){auto a=heap.top(); heap.pop();auto b=heap.top(); heap.pop();heap.push((a+b)/2);}printf("%d\n",(int)heap.top());return 0;
}
1125 Chain the Ropes (25 分)【难度: 一般 / 贪心 哈夫曼树】相关推荐
- 【数据结构(25)】5.7 哈夫曼树及其应用
文章目录 前言 一.哈夫曼树的基本概念 1. 哈夫曼树的特点 二.哈夫曼树的构造算法 1. 哈夫曼树的构造过程 2. 哈夫曼算法的实现 2.1 哈夫曼算法思路 2.2 哈夫曼算法实现 三.哈夫曼编码 ...
- 1125. Chain the Ropes (25)[数学逻辑题]
1. 原题: https://www.patest.cn/contests/pat-a-practise/1125 2. 思路: 题意:数学逻辑题. 给出一组绳子的长度.两段拼接后的长度为总长的一半. ...
- PAT甲级1125 Chain the Ropes:[C++题解]贪心、优先队列、合并果子
文章目录 题目分析 题目来源 题目分析 来源:acwing 板子题:合并果子合并果子优先队列 分析:贪心策略是: 每次取最短的两条绳子a和b.该两条绳子合并为1条绳子,且长度变为a+b2\frac{a ...
- 哈夫曼树哈夫曼编码(已知A,B,C,D,E,F,G的概率分别为:17,25,50,67,40,60,30.画出其哈夫曼树和每个字符对应的哈夫曼编码)
[也可以哈夫曼树与最优不等长编码] 已知A,B,C,D,E,F,G的概率分别为:17,25,50,67,40,60,30.画出其哈夫曼树和每个字符对应的哈夫曼编码.
- 哈夫曼树 (100分)哈夫曼树
4-1 哈夫曼树 (100分)哈夫曼树 第一行输入一个数n,表示叶结点的个数. 需要用这些叶结点生成哈夫曼树,根据哈夫曼树的概念,这些结点有权值,即weight,题目需要输出哈夫曼树的带权路径长度(W ...
- 【id:179】【20分】C. DS二叉树--赫夫曼树的构建与编码(不含代码框架)
题目描述 给定n个权值,根据这些权值构造huffman树,并进行huffman编码 参考课本P147算法6.12 HuffmanCoding代码,注意数组访问是从位置1开始 要求:赫夫曼的构建中,默认 ...
- PAT甲级1066 Root of AVL Tree (25分):[C++题解]建立平衡树(AVL树)
文章目录 题目分析 题目链接 题目分析 图片来源:acwing 分析 平衡树(AVL树)是平衡二叉搜索树的简称,当然需要满足二叉搜索树的性质,左子树小于根,根小于等于右子树:然后还要满足平衡树的基本特 ...
- PAT (Advanced Level) Practice A1090 Highest Price in Supply Chain (25 分)(C++)(甲级)(树,深度)
原题链接:A1090 Highest Price in Supply Chain #include<algorithm> #include<iostream> #include ...
- 【id:180】【20分】D. DS二叉树--赫夫曼树解码(不含代码框架)
题目描述 已知赫夫曼编码算法和程序,在此基础上进行赫夫曼解码 在赫夫曼树的类定义中增加了一个公有方法: int Decode(const string codestr, char txtstr[]) ...
最新文章
- 高效开发 Android App 的 10 个建议(转)
- 计算机应用基础的答案2015,2015年《计算机应用基础》模拟试题及答案(一)
- Paper:《First Order Motion Model for Image Animation》翻译与解读
- can协议解析字符串的原理
- 数据库四大特性与隔离级别
- [js] 说说你对JSBridge的理解
- php增删改查参数化,JPA之使用JPQL语句进行增删改查
- request.getParameterMap()使用
- micropython和python区别-MicroPython简介
- Java 学生选课系统 源代码
- java 合并pdf_用iText分割和合并pdf文件
- 生活沉思录 via 哲理小故事
- STK航空仿真(一)界面配置和插入模型
- AUTOSAR Functional Safety
- 十分感谢--致谢好友的
- 中文分词_数据分析之中文分词
- 联想拯救者y7000怎么配置Java环境_联想拯救者Y7000性能配置如何 用起来怎么样...
- 2018计算机网络MOOC第一章作业1
- Mac系统下修改Java的版本
- Win10 将D盘多余空间分配给C盘
热门文章
- bzoj 2756 [SCOI2012]奇怪的游戏 二分+网络流
- 第九章 字符串,字符和字节
- Python assert 断言
- warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失...
- 单例Singleton
- $(document).ready() $(window).load 及js的window.onload
- CentOS6安装redmine
- 杭电1867 A + B for you again
- sqlserver 穷举 排列 组合
- C# webBrowser与javascript互调