当前位置: 首页 > news >正文

【LeetCode】2187. 完成旅途的最少时间

1. 题意

在这里插入图片描述

2. 分析

二分法有一个关键特征:如果答案answer满足题意,那么对于任何整数i,如果有i>=answer,那么i也会是一个存在的解,只不过不是最优解。

本题想要找出一个达到 totalTrips 趟需要的最少时间成本t,那么对于题目来说任何大于t的数也会是解,但不是最优解;任何小于t的数都不是解。这样整个值域就被分成了两部分,区间[0,t)[t, +∞),如下图所示:
在这里插入图片描述
那么使用二分法不断的折中找出这个边界值即可。

3. 代码

class Solution:def minimumTime(self, time: List[int], totalTrips: int) -> int:left = 1max_time = time[0]for cur_time in time:max_time = max(max_time, cur_time)# 如果由这辆最慢的车完成totalTrips 需要的时间right = max_time * totalTripswhile(left <= right):mid = (left+right)//2if self.check(mid, totalTrips, time):right = mid-1else:left = mid+1return left# time_cost 需要花费的最少时间# times 时间数组def check(self, time_cost, totalTrips, times):cnt = 0for time in times:cnt += (time_cost//time) # 当前这个time可以完成几趟return cnt >= totalTrips

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 基于Python/MATLAB长时间序列遥感数据处理及在全球变化、植被物候提取、植被变绿与生态系统固碳分析、生物量估算与趋势分析应用
  • Three.js相机简明教程
  • 期货量化交易客户端开源教学第三节——键盘通信协议
  • CSS相对定位和绝对定位的区别
  • 了解Maven
  • stm32中断详解
  • LabVIEW滤波器性能研究
  • 3.5、matlab打开显示保存点云文件(.ply/.pcd)以及经典点云模型数据
  • Spring开发实践(五)
  • VUE2用elementUI实现父组件中校验子组件中的表单
  • 讲讲 JVM 的内存结构(附上Demo讲解)
  • LVS集群及其它的NAT模式
  • (自用)网络编程
  • 华为配置蓝牙终端定位实验
  • Apache中使用SSI设置
  • 【翻译】Mashape是如何管理15000个API和微服务的(三)
  • angular2 简述
  • hadoop集群管理系统搭建规划说明
  • js如何打印object对象
  • Laravel 实践之路: 数据库迁移与数据填充
  • Linux快速复制或删除大量小文件
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • SwizzleMethod 黑魔法
  • Terraform入门 - 3. 变更基础设施
  • VirtualBox 安装过程中出现 Running VMs found 错误的解决过程
  • Yeoman_Bower_Grunt
  • 阿里云Kubernetes容器服务上体验Knative
  • 阿里云前端周刊 - 第 26 期
  • 技术攻略】php设计模式(一):简介及创建型模式
  • 驱动程序原理
  • 扫描识别控件Dynamic Web TWAIN v12.2发布,改进SSL证书
  • 思维导图—你不知道的JavaScript中卷
  • [Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
  • 《码出高效》学习笔记与书中错误记录
  • ​Java并发新构件之Exchanger
  • ‌分布式计算技术与复杂算法优化:‌现代数据处理的基石
  • #微信小程序:微信小程序常见的配置传旨
  • (10)Linux冯诺依曼结构操作系统的再次理解
  • (aiohttp-asyncio-FFmpeg-Docker-SRS)实现异步摄像头转码服务器
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (附源码)python房屋租赁管理系统 毕业设计 745613
  • (附源码)springboot课程在线考试系统 毕业设计 655127
  • (附源码)springboot太原学院贫困生申请管理系统 毕业设计 101517
  • (自用)仿写程序
  • .NET 4.0网络开发入门之旅-- 我在“网” 中央(下)
  • .NET Framework 和 .NET Core 在默认情况下垃圾回收(GC)机制的不同(局部变量部分)
  • .NET 发展历程
  • .NET/C#⾯试题汇总系列:⾯向对象
  • @property括号内属性讲解
  • @RequestMapping-占位符映射
  • @Transactional 详解
  • [ web基础篇 ] Burp Suite 爆破 Basic 认证密码
  • [240903] Qwen2-VL: 更清晰地看世界 | Elasticsearch 再次拥抱开源!
  • [8-23]知识梳理:文件系统、Bash基础特性、目录管理、文件管理、文本查看编辑处理...
  • [BZOJ4010]菜肴制作