leetcode134:加油站

加油站

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

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

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

java 复制代码
public int canCompleteCircuit(int[] gas, int[] cost) {
        int store = 0;
        int MIN = Integer.MAX_VALUE;
        int index = -1;
        for (int i = 0; i < gas.length; i++) {
            store = store - cost[i] +gas[i] ;
            if(store < MIN){
                MIN = store;
                index = i;
            }
        }
        return store>=0 ? (index + 1)%gas.length : -1;
    }

贪心,因为是唯一解,找到跑一圈中总和最小的时刻,从这个时刻后面开始跑即可

相关推荐
冉冰学姐4 小时前
基于ssm的技能比赛报名管理系统29817vn0(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
java·数据库·spring·ssm 框架应用
代码雕刻家7 小时前
3.5.Maven-依赖管理-依赖配置&依赖传递
java·maven
!chen7 小时前
MyBatis-plus拓展之字段类型处理器、自动填充和乐观锁
java·tomcat·mybatis
故事和你917 小时前
sdut-程序设计基础Ⅰ-实验五一维数组(8-13)
开发语言·数据结构·c++·算法·蓝桥杯·图论·类和对象
像污秽一样7 小时前
算法与设计与分析-习题4.2
算法·排序算法·深度优先·dfs·bfs
Jin、yz7 小时前
JAVA 八股
java·开发语言
va学弟8 小时前
Java 网络通信编程(6):视频通话
java·服务器·网络·音视频
pjw198809038 小时前
Spring Framework 中文官方文档
java·后端·spring
Storynone8 小时前
【Day20】LeetCode:39. 组合总和,40. 组合总和II,131. 分割回文串
python·算法·leetcode
jgyzl8 小时前
2026.3.11MyBatis-Plus基本使用与思考
java·数据库·mybatis