class Solution:def canCompleteCircuit(self, gas, cost):# 如果总加油量小于总耗油量,那一定无法行驶一周# 反之则一定可以行驶一周if sum(gas) < sum(cost):return -1'''算法思路:如果x到不了y+1(但能到y),那么从x到y的任一点出发都不可能到达y+1。因为从其中任一点出发的话,相当于从0开始加油,而如果从x出发到该点则一定还有剩余的油。既然不从0开始都到不了y+1,那么从0开始就更不可能到达y+1了。变量:n:加油站数量。start:假定的起点。end:以start为起点所能到达的终点。rest:到达某加油站后剩余的汽油while循环:1. mid相当于行驶途中到达的加油站,不能直接用end是因为end可能大于n-1而造成数组下标溢出;2. 到达一个地铁站,rest算一下这一站的加油和下一站的耗油,end += 1;3. 当rest < 0,说明从start到不了end,则将start置为end;4. 当end > n-1 且 end % n == start时,说明汽车从起点成功行驶一周,返回start即可'''start = 0end = 0n = len(gas)rest = 0while start < n:mid = end % nrest += gas[mid] - cost[mid]end += 1if rest < 0:start = endrest = 0if end > n - 1 and end % n == start:return start

加油站-贪心134-python相关推荐

  1. 168. Leetcode 134. 加油站 (贪心算法-模拟题目)

    class Solution:def canCompleteCircuit(self, gas: List[int], cost: List[int]) -> int:cur_rest_acc ...

  2. 贪心问题(Python代码实现)——磁带最优存储问题

    文章目录 磁带最优存储问题 贪心策略 问题模型 python实现代码 Python知识小结 关于Python sort sort()与sorted()的区别 今早任务--贪心算法,Python代码实现 ...

  3. leetcode2021年度刷题分类型总结(八)贪心 (python)

    贪心算法并没有固定的套路,就是如何通过局部最优,推出整体最优.一般分为如下四步: 将问题分解为若干个子问题 找出适合的贪心策略 求解每一个子问题的最优解 将局部最优解堆叠成全局最优解 例一:455.分 ...

  4. leetcode 分饼干 贪心算法python

    描述 样例 样例1: 输入:[1,2,3], [1,1] 输出:1 说明:你有三个孩子和两块饼干,三个孩子的贪吃指数分别是1,2,3 虽然你有两块饼干,但是因为它们的大小都为1,你只能满足让贪吃指数为 ...

  5. LeetCode 670 最大交换 (暴力+贪心、Python)

    同个人网站 https://www.serendipper-x.cn/,欢迎访问 ! 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/maxim ...

  6. python第八周项目_贪心学院Python训练营第八周-数据可视化

    写在最前面 正好最近在写论文,需要对语料库进行一些数据分析.所以也在琢磨着Python的一些关于数据可视化和数理统计分析方面的库. 学校里的论文数据分析指导课教我们的一般都是R.SPSS居多.很多人会 ...

  7. “Python字符串index()方法应用案例”文末三道思考题答案

    问题链接:Python字符串index()方法应用案例一则 本文给出上文文末三个思考题的参考答案,当然,这些答案不是唯一的,也不是最高效的,只是演示字符串方法和内置函数的用法,并且在原题代码上做最少的 ...

  8. Python使用正则表达式检查书稿中不应该出现的重复字

    问题描述:在编写书稿和反复修改书稿时,很容易有多字的情况,例如"用户的的资料"."需要需要用户输入",这些不小心的错误用肉眼很难完全发现.但是设定好规则之后,代 ...

  9. Python正则表达式案例一则:单词非两端字符改为小写

    问题描述:给定一段英文,要求把其中所有单词除两端字符之外的其他字母都改为小写. 技术要点: 1)re模块的sub()函数用法: 2)match对象的group()方法. 参考代码: 运行结果: abc ...

最新文章

  1. P7116-[NOIP2020]微信步数【数学】
  2. apache禁止多目录运行php文件下载,Nginx Apache下如何禁止指定目录运行PHP脚本
  3. OpenShift 4 - 使用Operator安装Gitea
  4. Python JSONPath示例
  5. Highcharter绘制中国地图
  6. 如何去除计算机病毒,怎么清除计算机病毒
  7. 百度云 图片搜索(JavaAipImageSearch)
  8. zotero配合坚果云和papership进行文献管理
  9. duplicate designator is not allowedC/C++(2906)
  10. 订单超过 7 天不允许退货
  11. python输入数据带单位_python – Pandas用单位插入数据
  12. @media only screen and
  13. 使用OpenLayers根据经纬度对地图进行单个标点,以及点击标点弹框的实现(没有从后台获取经纬度数据)
  14. BJDCTF 2nd 刷题记录
  15. 眼动数据中瞳孔大小这个数据怎么用?
  16. 词法分析——词法分析的任务
  17. 《吴恩达深度学习》编程作业-第二周
  18. c语言怎么做步骤循环,C语言基础教程之循环
  19. 数据库里怎样根据出生日期计算精确年龄
  20. 成都百知教育跨境电商人物专访| Shopee大卖“朔风”

热门文章

  1. 基于MDKA5D31-EK_T70开发板的QT示例-demo12:pcf8562演示
  2. 《大黄蜂》发布“蜂狂开战”预告 大黄蜂绝境出击迎战霸天虎
  3. word中如何设置除封面外显示页码(Word2019为例)
  4. php访问微博页面,如何使用 使用PHP在自己网站上显示最新的微博
  5. 达摩院探访,机器视觉之发丝级抠图技能解析?
  6. 公司微信公众号的运营方法!这些一定要保存好!
  7. kotlin跳出for循环
  8. ES5 —— reduce 方法
  9. 2018年长沙理工大学第十三届程序设计竞赛题解
  10. IT男,难道真的都是这样的?