【BZOJ4198】[Noi2015]荷马史诗【k叉Huffman树】【贪心】
来源:互联网 发布:centos的vmdk文件下载 编辑:程序博客网 时间:2024/05/01 02:39
【题目链接】
学习一发NOIP初赛知识。
/* Pigonometry */#include <cstdio>#include <algorithm>#include <queue>using namespace std;typedef long long LL;int n, k, top;struct _data {LL w, h;bool operator < (const _data &x) const {return w != x.w ? w > x.w : h > x.h;}};priority_queue<_data> q;int main() {scanf("%d%d", &n, &k);for(int i = 1; i <= n; i++) {LL w; scanf("%lld", &w);q.push((_data){w, 0});}if((n - 1) % (k - 1) != 0) top = k - 1 - (n - 1) % (k - 1);for(int i = 1; i <= top; i++)q.push((_data){0, 0});top += n;LL ans = 0;for(; top != 1; top -= k - 1) {LL w = 0, h = 0;for(int i = 1; i <= k; i++) {_data x = q.top(); q.pop();w += x.w; h = max(h, x.h);}ans += w;q.push((_data){w, h + 1});}printf("%lld\n%lld\n", ans, q.top().h);return 0;}
0 0
- 【BZOJ4198】[Noi2015]荷马史诗【k叉Huffman树】【贪心】
- bzoj4198 [Noi2015] [荷马史诗] Huffman 编码
- 【NOI2015】【bzoj4198】【荷马史诗】【k叉哈夫曼树】【贪心】
- 【哈夫曼树,贪心】BZOJ4198 [Noi2015]荷马史诗
- bzoj4198 [Noi2015]荷马史诗 k叉哈夫曼树
- BZOJ4198(Noi2015)[荷马史诗]--k叉哈夫曼树
- 【huffman】bzoj4198:【UOJ#130】 [Noi2015]荷马史诗
- [BZOJ4198][Noi2015]荷马史诗
- bzoj4198【noi2015】荷马史诗
- bzoj4198 noi2015 荷马史诗
- 【NOI2015】bzoj4198 荷马史诗
- 【bzoj4198】[NOI2015]荷马史诗
- bzoj4198 [Noi2015]荷马史诗
- BZOJ4198: [Noi2015]荷马史诗 哈夫曼树
- 【BZOJ4198】荷马史诗,贪心之k叉哈夫曼树
- BZOJ4198荷马史诗
- BZOJ4198或UOJ130 荷马史诗 【K叉哈夫曼树】【堆】
- 【NOI2015 Day2】荷马史诗 huffman tree结构运用
- Java经典设计模式(2):七大结构型模式(附实例和详解)
- fatal error C1083: 无法打开预编译头文件 正确解法
- Android ListView默认选中某一项
- Hibernate实体关系映射
- javascript基础一 (DOM基础一)
- 【BZOJ4198】[Noi2015]荷马史诗【k叉Huffman树】【贪心】
- 安装JDK
- 可重入函数/不可重入函数
- 【QT】:QT中的信号和槽
- IIS发布时的注意事项
- python 数据结构
- angular学习(一)—— 概览
- 类与对象
- Hibernate查询语言(HQL)