zoukankan      html  css  js  c++  java
  • leetcode--Gas Station

    There are N gas stations along a circular route, where the amount of gas at station i is gas[i].

    You have a car with an unlimited gas tank and it costs cost[i] of gas to travel from station i to its next station (i+1). You begin the journey with an empty tank at one of the gas stations.

    Return the starting gas station's index if you can travel around the circuit once, otherwise return -1.

    Note:
    The solution is guaranteed to be unique.

     1 public class Solution {
     2     public int canCompleteCircuit(int[] gas, int[] cost) {
     3         int starts = 0;
     4         int sum1 = 0;
     5         int sum2 = 0;
     6         for(int i = 0; i < gas.length; ++i){
     7             sum2 += gas[i] - cost[i];
     8             if(sum2 < 0){
     9                 sum1 += sum2;
    10                 sum2 = 0;
    11                 starts = i + 1;
    12             } 
    13         }
    14         if(sum1 + sum2 <0)
    15             starts = -1;
    16         return starts;
    17     }
    18 }

     Another solution

    public class Solution {
        public int canCompleteCircuit(int[] gas, int[] cost) {
            int length = gas.length, startStation = length - 1, canReach = 0;
    		int gasInTank = gas[startStation];
    		int costInSum = cost[startStation];
    		while(canReach < startStation){
    			if(gasInTank >= costInSum){
    				gasInTank += gas[canReach];
    				costInSum += cost[canReach];
    				++canReach;
    			}
    			else{
    				--startStation;
    				costInSum += cost[startStation];
    				gasInTank += gas[startStation];
    			}
    		}
    		startStation = (gasInTank >= costInSum) ? startStation : -1;
    		return startStation;
        }
    }
    

      

  • 相关阅读:
    ClassLoader类加载器
    java反射(二)--反射应用案例
    java反射(一)--认识反射机制
    javaIO流(四)--输入与输出支持
    javaIO流(三)--IO深入操作
    javaIO流(二)--字节流与字符流
    javaIO流(一)--File类的基本使用
    python文件读写
    python的logging模块
    查看python版本
  • 原文地址:https://www.cnblogs.com/averillzheng/p/3536711.html
Copyright © 2011-2022 走看看