博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 3253 Fence Repair 贪心+优先队列
阅读量:4597 次
发布时间:2019-06-09

本文共 688 字,大约阅读时间需要 2 分钟。

题意:农夫要将板割成n块,长度分别为L1,L2,...Ln。每次切断木板的花费为这块板的长度,问最小花费。21 分为 5 8 8三部分。
 
思路:思考将n部分进行n-1次两两合成最终合成L长度和题目所求花费一致。贪心,按木板长度排序,每次取长度最小的两块木板,则答案最小。因为合成次数是固定不变的,尽量让小的部分进行多次合成,这样总花费最小。
 
#include
#include
using namespace std;typedef long long ll;priority_queue
,greater
> que;int main() { int n,x; while(~scanf("%d",&n)) { while(!que.empty()) que.pop(); for(int i=0;i
1) { a=que.top();que.pop(); b=que.top();que.pop(); res+=a+b; que.push(a+b); } printf("%lld\n",res); } return 0; }

 

转载于:https://www.cnblogs.com/LinesYao/p/5740863.html

你可能感兴趣的文章
如何用WinCC发送报警消息至微信
查看>>
LeetCode算法扫题系列19
查看>>
nginx获取经过层层代理后的客户端真实IP(使用正则匹配)
查看>>
YII实现dropDownList 联动事件
查看>>
搞定PHP面试 - 正则表达式知识点整理
查看>>
为什么JavaScript里面0.1+0.2 === 0.3是false
查看>>
freemarker 设置中文
查看>>
docker swarm集群搭建
查看>>
选择排序
查看>>
SQLAlchemy
查看>>
BZOJ 1303: [CQOI2009]中位数图 问题转化_扫描_思维
查看>>
SP1026 FAVDICE - Favorite Dice 数学期望
查看>>
NodeJS、NPM安装配置步骤(windows版本)
查看>>
今日内容的回顾12
查看>>
js中字符串常用熟悉和方法
查看>>
【矩阵+十进制快速幂】[NOI2013]矩阵游戏
查看>>
Java一个简单的文件工具集
查看>>
蓝牙BLE扫描成功,log中打印出扫描到的设备
查看>>
React(v16.8.4)生命周期详解
查看>>
一般处理应用页中绑定方法代码段
查看>>