当前位置: 首页 > news >正文

聊城网站建设价位高端网站搭建

聊城网站建设价位,高端网站搭建,百度搜索简洁版网址,python in wordpress871. 最低加油次数 题干 汽车从起点出发驶向目的地,该目的地位于出发位置东面 target 英里处。 沿途有加油站,用数组 stations 表示。其中 stations[i] [positioni, fueli] 表示第 i 个加油站位于出发位置东面 positioni 英里处,并且有 f…

871. 最低加油次数

题干

汽车从起点出发驶向目的地,该目的地位于出发位置东面 target 英里处。

沿途有加油站,用数组 stations 表示。其中 stations[i] = [positioni, fueli] 表示第 i 个加油站位于出发位置东面 positioni 英里处,并且有 fueli 升汽油。

假设汽车油箱的容量是无限的,其中最初有 startFuel 升燃料。它每行驶 1 英里就会用掉 1 升汽油。当汽车到达加油站时,它可能停下来加油,将所有汽油从加油站转移到汽车中。

为了到达目的地,汽车所必要的最低加油次数是多少?如果无法到达目的地,则返回 -1

注意:如果汽车到达加油站时剩余燃料为 0,它仍然可以在那里加油。如果汽车到达目的地时剩余燃料为 0,仍然认为它已经到达目的地。

示例 1:

**输入:**target = 1, startFuel = 1, stations = []
**输出:**0
**解释:**可以在不加油的情况下到达目的地。

示例 2:

**输入:**target = 100, startFuel = 1, stations = [[10,100]]
输出:-1
**解释:**无法抵达目的地,甚至无法到达第一个加油站。

示例 3:

**输入:**target = 100, startFuel = 10, stations = [[10,60],[20,30],[30,30],[60,40]]
**输出:**2
解释:
出发时有 10 升燃料。
开车来到距起点 10 英里处的加油站,消耗 10 升燃料。将汽油从 0 升加到 60 升。
然后,从 10 英里处的加油站开到 60 英里处的加油站(消耗 50 升燃料),
并将汽油从 10 升加到 50 升。然后开车抵达目的地。
沿途在两个加油站停靠,所以返回 2 。

题解

先把路过的加油站的油收集起来。当达到i加油站时候,发现不够。再弹出之前加油站收集的油(使用优先级队列),count数量+1。
然后经过所有加油站后,油依旧不够达到终点,再使用while弹出之前收集的油count数量+1

public static int minRefuelStops(int target, int startFuel, int[][] stations) {  int total = startFuel;  int count = 0;  PriorityQueue<Integer> heap = new PriorityQueue<>((v1, v2) -> {  return v2 - v1;  });  for (int i = 0; i < stations.length; i++) {  while (total - stations[i][0] < 0) {  if (heap.isEmpty()) {  return -1;  }  Integer poll = heap.poll();  count++;  total += poll;  if (target <= total) {  return count;  }  }  heap.add(stations[i][1]);  }  // 这里已经走到最后一战了  while (target > total) {  if (heap.isEmpty()) {  return -1;  }  Integer poll = heap.poll();  count++;  total += poll;  }  return count;  
}
总结

和滑动窗口的写法是一样的,但是这是属于贪心算法。滑动窗口也属于贪心这一类问题。
这个题目还是比较简单的,如果因为看到hard而没有做出来就太可惜了

官方题解用了一个while解决问题,本质是一样的,是多引入一个加油点 位置为终点,补充为0

http://www.yayakq.cn/news/233042/

相关文章:

  • 新闻头条免费下载安装百度seo竞价推广是什么
  • 张掖公司网站制作专门建立网站的公司吗
  • 网站霸屏怎么做sem运营有出路吗
  • 创研科技做网站怎么样腾讯网站认证
  • 济南网站建设推广服务网站设网站设计
  • 金华企业网站建设公司布吉做棋牌网站建设哪家便宜
  • 有没有做二手设备网站广东省广州市佛山市
  • 织梦系统如何做网站wordpress标签文章
  • 电机东莞网站建设网站制作价格情况
  • 学校网站制作一级建造师专业对照表
  • 建设网站图片福建住房和城乡建设厅网站一体化平台
  • 塘沽做网站公司网站建设类的职位
  • 深圳网站建设定制先四年疫后灾
  • 深圳网站建设设计如何部署wordpress
  • 申请网站建设费用的请示今天新闻事件
  • 江西建设厅网站电子手机免费建站平台下载
  • wordpress手机登录跳转页面seo搜索引擎官网
  • 广州开发网站ddns域名注册
  • nginx 网站建设遵义城乡建设网站
  • 百度网站官方认证怎么做物流网站功能
  • 上海做网站的公司哪个好抖音seo优化
  • 网站1g的空间能用多久新乡搜索引擎优化
  • 财政网站平台建设不足岳阳市内从事网站建设的公司
  • 响应式网站模仿泰国做网站
  • 揭阳做网站的网站建设管理调研提纲
  • 网站去掉index.html仿it资讯类网站源码
  • 网站建设运维方案网站设计师图片
  • 做网站的什么行业好出单电子商务网站建设经费
  • 杭州建站模板搭建温州专业营销网站
  • 养车网站开发做视频解析网站是犯法的么