`
hcx2013
  • 浏览: 88762 次
社区版块
存档分类
最新评论

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.

 

public class Solution {
    public int canCompleteCircuit(int[] gas, int[] cost) {
        int start = 0;
        int cur = 0;
        int total = 0;
        for (int i = 0; i < gas.length; i++) {
			cur += gas[i] - cost[i];
			total += gas[i]-cost[i];  
			if (cur < 0) {
				start = i+1;
				cur = 0;
			}
		}
        if (total >= 0) {
        	return start;
        } else {
        	return -1;
        }
    }
}

 

0
2
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics