首页 > 代码库 > python 小练习
python 小练习
一个环形的公路上有n个加油站,编号为0,1,2,...n-1, 每个加油站加油都有一个上限,保存在列表limit中,即limit[i]为第i个加油站加油的上限, 而从第i个加油站开车开到第(i+1)%n个加油站需要cost[i]升油,cost为一个列表。 现在有一辆开始时没有油的车,要从一个加油站出发绕这个公路跑一圈回到起点。 给你整数n,列表limit和列表cost,你来判断能否完成任务。 如果能够完成任务,输出起始的加油站编号,如果有多个,输出编号最小的。 如果不能完成任务,输出-1。
gas=0
res=[]
for i in range(n):
gas=0
for j in range(n):
gas+=limit[(i+j)%n] %一开始用while来做比较麻烦
gas-=cost[(i+j)%n]
if gas<0:break
if gas>=0:
res.append(i)
if len(res)==0:print -1 %把所有可能的数字附加进列表,如果len == 0 ,就代表没有可能的结果
else :print (res[0])
python 小练习
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。