博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ2431-Expedition【优先队列+贪心】
阅读量:5299 次
发布时间:2019-06-14

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

题目大意:卡车每走一公里就消耗一单位的汽油,初始时给你p单位油,你要到达l距离的终点。其中路上有n个补给点可以加油,并且油箱容量无限大,问你最少可以停车几次。

 

思路:因为油箱无限大,所以我们可以这么认为,我们路过一个加油站之后,我们在之后的路上随时可以选择加那个加油站的油,而且肯定是一次加完B_i,所以我们从汽车初始状态开始开,到没油了,看看路上路过有加油站没,选路过过油最多的,加上,继续这样。最后加油次数一定是最少的

 

#include
#include
#include
#include
using namespace std;const int maxn=10005;struct node{ int d,f;};node a[maxn];bool cmp(node x,node y){ return x.d>y.d;}int main(){ int n,l,p; while(scanf("%d",&n)!=EOF) { priority_queue
q; for(int i=0;i
0 && !q.empty()) { ++ans; int temp=q.top(); q.pop(); l-=temp; while(index

 

转载于:https://www.cnblogs.com/aerer/p/9930929.html

你可能感兴趣的文章
Apache Commons 工具集使用简介
查看>>
jquery validation插件
查看>>
(ubuntu ufw)My firewall is blocking network connections from the docker container to outside
查看>>
Oracle PL/SQL之LOOP循环控制语句
查看>>
复制到剪切板
查看>>
Linux多线程 - 基本操作
查看>>
写在技术博客开通一周年之际:这一年在技术上我做了什么
查看>>
javascript权威指南 第8章 笔记2
查看>>
Odoo 动态设置树形视图列表中的字段
查看>>
设计模式-抽象工厂模式
查看>>
Factory Method
查看>>
Struts 2的数据校验
查看>>
2012年度FusionCharts图表控件最受欢迎文章精选(上)
查看>>
java 高并发 订单编号递增(解决方案)
查看>>
visio二次开发初始化问题
查看>>
制作10.11MAC OS系统启动盘
查看>>
【Jquery】ajax @requestBody
查看>>
Binary Tree Zigzag Level Order Traversal 解答
查看>>
Palindrome Pairs 解答
查看>>
Ubuntu下安装requests
查看>>