python leetcode 134. Gas Station 135. Candy
阿新 • • 發佈:2018-12-14
考察是將題目轉化為程式碼的能力
134. Gas Station
class Solution(object):
def canCompleteCircuit(self, gas, cost):
"""
:type gas: List[int]
:type cost: List[int]
:rtype: int
"""
if sum(gas)<sum(cost):
return -1
min_idx=0
sumcost= 0
for i in range(len(gas)):
if sumcost+gas[i]<cost[i]:
min_idx=i+1
sumcost=0
else:
sumcost+=gas[i]-cost[i]
return min_idx
135. Candy
class Solution:
def candy(self, ratings):
"""
:type ratings: List[int]
:rtype: int
"""
n=len(ratings)
if n<=0: return 0
res=[1]*n
for i in range(n-1):
if ratings[i+1]>ratings[i]:
res[i+1]=res[i]+1
for j in range(n-1,0,-1):
if ratings[j-1]>ratings[j]:
res[j-1]=max(res[j]+1,res[j-1])
return sum(res)