LeetCode题目-134

首页 编程分享 LEET_CODE 正文

leetCode 转载 编程分享 2022-02-14 00:40:16

简介 LeetCode题目-134


✏Leetcode基础刷题之(134. Gas Station)


✏描述

一个环形路上有n个加油站,gas[i]表示每个加油站上你能加的油,cost[i]表示你从i站到i+1站所需要的油,让我们求是否存在从一个起点出发,能返回到原点加油站的开始起点站,注意想要走完一圈加油站,那么前提条件是gas整体肯定要大于cost。


✏题目实例

✏题目分析

每到一个站,需要重新计算和,剩余的gas+当前的gas值-消费的cost,判断是否大于0,0可以继续,如果是小于0,就说明这个点之前的所有的加油点都不能作为他的起始点,所以我们新的起始点就应该是$i+1,最后判断一下变量是否小于0是的话说明不存在直接返回-1,否则返回起始点。

 /**
     * @param Integer[] $gas
     * @param Integer[] $cost
     * @return Integer
     */
    function canCompleteCircuit($gas, $cost) {
        $sum=$total=0;$start=0;
        
        for($i=0;$i < count($gas);$i++){
            $sum +=$gas[$i]-$cost[$i];
            $total +=$gas[$i]-$cost[$i];

            if($sum <0) {
                $start=$i+1;
                $sum=0;
            }
        }
        
      return  $total<0?-1:$start;
        
    }

转载链接:https://leetcode.cn/


Tags:


本篇评论 —— 揽流光,涤眉霜,清露烈酒一口话苍茫。


    声明:参照站内规则,不文明言论将会删除,谢谢合作。


      最新评论




ABOUT ME

Blogger:袅袅牧童 | Arkin

Ido:PHP攻城狮

WeChat:nnmutong

Email:nnmutong@icloud.com

标签云