当前位置:网站首页>【每日一题】871. 最低加油次数
【每日一题】871. 最低加油次数
2022-07-04 16:04:00 【王六六的IT日常】
871. 最低加油次数
困难题
参考:【宫水三叶】简单优先队列(堆)贪心题
题目思路:
- 将路上的一个个加油站 视为 一桶桶的油,每次经过的时候,就把油带上放后备箱;
- 当油不够的时候,取出后备箱所带的 最多的那桶油 加进油箱
- 这样以来,如若油箱和后备箱的油加起来都不够,那么就到不了了
class Solution {
public int minRefuelStops(int target, int startFuel, int[][] stations) {
// 使用优先队列,承装所经过加油站的油
PriorityQueue<Integer> q = new PriorityQueue<>((o1, o2) -> (o2 - o1));
int ans = 0, len = stations.length;
// 特判:
if (len < 1) return startFuel < target ? -1 : 0;
int fuel = startFuel;// 加进油箱的油(含使用过的)
// 经过可以到达的所有的加油站,背上里面的油
for (int i = 0; i < len; i ++) {
while (fuel < stations[i][0]) {
Integer add = q.poll();
if (add == null) return -1;
fuel += add;
ans ++;
}
q.offer(stations[i][1]);
}
// 已经经过所有的加油站仍未到达,则用车油箱和后备箱里的所剩的fuel,以期到达
while (fuel < target) {
Integer add = q.poll();
if (add == null) return -1;
fuel += add;
ans ++;
}
return ans;
}
}
边栏推荐
- 7 RSA Cryptosystem
- 明星开店,退,退,退
- To sort out messy header files, I use include what you use
- shell脚本的替换功能实现
- Electronic pet dog - what is the internal structure?
- 超标量处理器设计 姚永斌 第7章 寄存器重命名 摘录
- curl 命令妙用
- 超标量处理器设计 姚永斌 第5章 指令集体系 摘录
- 公司要上监控,Zabbix 和 Prometheus 怎么选?这么选准没错!
- leetcode:421. The maximum XOR value of two numbers in the array
猜你喜欢
超标量处理器设计 姚永斌 第7章 寄存器重命名 摘录
7 RSA密码体制
【HCIA持续更新】网络管理与运维
第十八届IET交直流输电国际会议(ACDC2022)于线上成功举办
公司要上监控,Zabbix 和 Prometheus 怎么选?这么选准没错!
The Block:USDD增长势头强劲
简单易用的地图可视化
leetcode:421. The maximum XOR value of two numbers in the array
【Unity UGUI】ScrollRect 动态缩放格子大小,自动定位到中间的格子
Offline and open source version of notation -- comprehensive evaluation of note taking software anytype
随机推荐
Zebras are recognized as dogs, and the reason for AI's mistakes is found by Stanford
码农版隐秘的角落:作为开发者最讨厌的5件
新享科技发布小程序UniPro小优 满足客户移动办公场景
CANN算子:利用迭代器高效实现Tensor数据切割分块处理
MVC模式和三层架构
将Opencv绘制图片显示在MFC Picture Control控件上
VB cannot access database stocks
网页游戏引擎
居家打工年入800多万,一共五份全职工作,他还有时间打游戏
Developers, MySQL column finish, help you easily from installation to entry
Initial experience of domestic database tidb: simple and easy to use, quick to start
Flask 轻量web框架
What if Kaili can't input Chinese???
R语言plotly可视化:plotly可视化互相重叠的直方图(historgram)、并在直方图的顶部边缘使用geom_rug函数添加边缘轴须图Marginal rug plots
Vscode modification indentation failed, indent four spaces as soon as it is saved
超标量处理器设计 姚永斌 第5章 指令集体系 摘录
kaili不能输入中文怎么办???
数学分析_笔记_第7章:多元函数的微分学
How to choose one plus 10 pro and iPhone 13?
【HCIA持续更新】广域网技术