题目:
给定一组站点,每个站点包含两个数据gas[i]和cost[i],分别为该站点可加的油量和跑到下一站点的油量。这些站点组成一个环,求从哪个站点出发可以跑完整个环,若不能跑完整个环,则返回-1.
代码(python)
class Solution:
def canCompleteCircuit(self, gas, cost):
"""
:type gas: List[int]
:type cost: List[int]
:rtype: int
思路:
sum(gas) < sum(cost) return -1
0-n: sum(gas) < sum(cost)则不能作为开始站点
"""
if sum(gas)<sum(cost):
return -1
else:
res = 0
station = 0
for i in range(len(gas)):
if res+gas[i]-cost[i]<0:
station = i+1
res = 0
else:
res = res+gas[i]-cost[i]
return station