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;
        }
    }
    

      

  • 相关阅读:
    T-SQL 查询数据库中各个表的使用空间
    T-SQL 拆分使用指定分隔符的字符串(split string)
    T-SQL 去除特定字段的前导0
    T-SQL 实现行转列
    T-SQL 将存储过程结果插入到表中
    T-SQL查看数据库恢复(RESTORE)时间
    Why Do We Need a Data Warehouse?
    T-SQL 常用DDL语句
    dedecms织梦笔记
    Lua 基础简明教程
  • 原文地址:https://www.cnblogs.com/averillzheng/p/3536711.html
Copyright © 2011-2022 走看看