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

leetcode做题笔记134. 加油站

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

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

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

思路一:贪心

int canCompleteCircuit(int* gas, int gasSize, int* cost, int costSize){int profile[gasSize];int start = 0,sum = 0;for(int i = 0;i<gasSize;i++){profile[i] = gas[i] - cost[i];if(profile[i]>profile[start])start = i;sum+=profile[i];}if(sum<0)return -1;return start;}

分析:

本题分析题意,即找到一条路径使总和大于耗油量即可,利用for循环,列举每个站点到结尾的情况,当profile[i]>profile[start]即初始油量最大时可从此开始,不满足到达终点的情况则返回-1

总结:

本题考察贪心的应用,不断向后判断是否补给油量大于当前油量,最后判断总和是否大于耗油量,返回开始的位置

http://www.lryc.cn/news/163763.html

相关文章:

  • Allegro166版本如何在颜色管理器中实时显示层面操作指导
  • 纷享销客入选中国信通院《高质量数字化转型产品及服务全景图》
  • C高级 DAY4
  • C高级day4
  • Java8-17 --- idea2022
  • Mybatis---增删改查
  • 开机性能-如何抓取开机systrace
  • VBA技术资料MF54:VBA_EXCEL实时获取鼠标位置
  • 模电课程设计
  • 【2023研电赛】兆易创新命题三等奖: 低成本单母线电流永磁同步无感驱动器
  • 原生Js 提取视频中的音频
  • 设计模式-备忘录模式(Memento Pattern)
  • PHP对接阿里云虚拟号的实现(号码隐私保护)
  • 刷新单年发射纪录:SpaceX成功发射62次猎鹰9号火箭
  • 项目打包docker镜像 | 上传nexus | jenkins一键构建
  • ios 运行ipa包 日志查看方式
  • AUTOSARCAN-Tp协议
  • 【设计模式】组合模式实现部门树实践
  • 恒林家居引入纷享销客CRM系统,领跑家居行业营销数字化进程
  • 多线程-锁的种类
  • Hive 和 HDFS、MySQL 之间的关系
  • 【面试题】如何实现数组去重的?有几种方式?
  • 使用TCP方式拉取Canal数据
  • Docker安装mysql实战说明
  • 前端DOM操作精解:基础概念、方法与最佳实践
  • python sorted函数详解2023.9.11
  • Spring Reactive:响应式编程与WebFlux的深度探索
  • Qt应用开发(基础篇)——工具按钮类 QToolButton
  • 【数据结构面试题】栈与队列的相互实现
  • 华为认证和红帽认证哪个比较好考呢