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

伊犁州建设局网站网站开发及流行框架

伊犁州建设局网站,网站开发及流行框架,做网站多久,免费完整版的网站模板134. 加油站 在一条环路上有 n 个加油站,其中第 i 个加油站有汽油 gas[i] 升。 你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。 给定两个整数数组 gas…

134. 加油站

在一条环路上有 n 个加油站,其中第 i 个加油站有汽油 gas[i] 升。

你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。

给定两个整数数组 gas 和 cost ,如果你可以按顺序绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1 。如果存在解,则 保证 它是 唯一 的。

示例 1:

输入: gas = [1,2,3,4,5], cost = [3,4,5,1,2]
输出: 3
解释:
从 3 号加油站(索引为 3 处)出发,可获得 4 升汽油。此时油箱有 = 0 + 4 = 4 升汽油
开往 4 号加油站,此时油箱有 4 - 1 + 5 = 8 升汽油
开往 0 号加油站,此时油箱有 8 - 2 + 1 = 7 升汽油
开往 1 号加油站,此时油箱有 7 - 3 + 2 = 6 升汽油
开往 2 号加油站,此时油箱有 6 - 4 + 3 = 5 升汽油
开往 3 号加油站,你需要消耗 5 升汽油,正好足够你返回到 3 号加油站。
因此,3 可为起始索引。

示例 2:

输入: gas = [2,3,4], cost = [3,4,3]
输出: -1
解释:
你不能从 0 号或 1 号加油站出发,因为没有足够的汽油可以让你行驶到下一个加油站。
我们从 2 号加油站出发,可以获得 4 升汽油。 此时油箱有 = 0 + 4 = 4 升汽油
开往 0 号加油站,此时油箱有 4 - 3 + 2 = 3 升汽油
开往 1 号加油站,此时油箱有 3 - 3 + 3 = 3 升汽油
你无法返回 2 号加油站,因为返程需要消耗 4 升汽油,但是你的油箱只有 3 升汽油。
因此,无论怎样,你都不可能绕环路行驶一周。

提示:

  • gas.length == n
  • cost.length == n
  • 1 <= n <= 105
  • 0 <= gas[i], cost[i] <= 104

这个问题可以通过一次遍历来解决,时间复杂度为 �(�)O(n)。

具体算法如下:

  1. 初始化 start_index(起始站点)为 0 和 total_gas(总油量)和 current_gas(当前油量)为 0。
  2. 遍历所有的加油站:
    • 在每一个加油站,增加 current_gastotal_gas,每次加 gas[i]
    • 每次前往下一个加油站,减去 cost[i],并且更新 current_gas
    • 如果 current_gas 变成负数,那就意味着从当前的 start_index 无法到达下一个加油站。因此,更新 start_indexi + 1,并且将 current_gas 重置为 0。
  3. 如果 total_gas 是负数,返回 -1,否则返回 start_index

代码如下:

class Solution(object):def canCompleteCircuit(self, gas, cost):""":type gas: List[int]:type cost: List[int]:rtype: int"""total_gas = 0current_gas = 0start_index = 0for i in range(len(gas)): #i表示从第几站出发total_gas += gas[i] - cost[i]current_gas += gas[i] - cost[i]# 如果当前油量不够,重新设置起点,并将当前油量重置为0if current_gas < 0:start_index = i + 1current_gas = 0# 检查总油量是否足够绕一圈return start_index if total_gas >= 0 else -1

 

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

相关文章:

  • 有做阿里网站的吗腾讯邮箱企业邮箱网页版
  • 企业网络营销为什么要选择外包?济南网络优化推广公司哪家好
  • 上传网站程序分类目录检索
  • 河北网站seo策划株洲网红餐厅
  • 成都家居网站建设wordpress文章为啥数据库中找不到
  • 一个空间做多个网站河南省建设劳动学会网站
  • 做网站都要学什么wordpress无法创建目录
  • 喷码机营销型网站设计官网首页
  • 网站国际联网备案做汽配的外贸网站
  • 英文网站设计公司公司网站哪里好
  • 安全中国asp.net网站开发项目实战培训班没有网站可以做百度推广吗
  • 网站制作开发pinterest官网
  • 网站怎么连接微信支付电子商务静态网站建设心得
  • 做中学数学教案有哪些好的网站网站建设捌金手指花总十四
  • 有哪些网站可以做推广长沙专门做网站公司
  • 注册公司上什么网站多个wordpress站点同步
  • 竹溪县县建设局网站网站的策划与建设阶段
  • 广东网站设计网站小程序自己开发
  • asp网站攻击中企动力科技股份有限公司成都分公司
  • 中小学网站建设规范旺道seo优化
  • o2o与网站建设什么情况下需要建设网站
  • 网站实现青岛网站建设公司在哪
  • 资源共享网站建设建设赚钱的网站
  • 深圳企业建站招聘精准营销的典型案例
  • 企业摄影网站模板wordpress能做外贸网站
  • 马鞍山建设工程监督站网站博客网站 wordpress
  • 做网站的内容omeka wordpress对比
  • 网站首页文案模板资深网站如何做可以收取客户月费
  • 网站优化建设兰州深圳网站制作西安
  • 一分钟建站建设工程施工管理题库