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

server/2024/9/24 12:58:51/

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

http://www.ppmy.cn/server/62214.html

相关文章

iOS ------ 类 父类 元类的总结

一&#xff0c;类的定义 类在OC中其实是指向objc_class的结构体指针&#xff0c;结构体构造我 typedef struct objc_class *Class; struct objc_class { Class isa; Class super_class; const char *name; long version; long info; long instance_size; struct obj…

前端反显后端图片、上传预览图片

一、下载反显图片 1、将文件下载为blob格式文件。 2、将后端返回的文件转为base64&#xff0c;然后将解析完的数据赋值到图片组件上。 将后端返回的数据解拿出&#xff0c;调用转换base64 方法&#xff1a; downloadFile(_this.userInfo.imgUrl).then(res > {res res.data…

在linux中查找 / 目录下的以.jar结尾的文件(find / -name *.jar)

文章目录 1、查找 / 目录下的以.jar结尾的文件 1、查找 / 目录下的以.jar结尾的文件 [rootiZuf6332h890vozldoxcprZ ~]# find / -name *.jar /etc/java/java-1.8.0-openjdk/java-1.8.0-openjdk-1.8.0.342.b07-1.el9_0.x86_64/lib/security/policy/limited/US_export_policy.ja…

人像视频预处理【时间裁剪+画面裁切+调整帧率】

在视频处理中&#xff0c;cut&#xff08;裁剪&#xff09;、crop&#xff08;画面裁切&#xff09;和fps&#xff08;帧率调整&#xff09;这三个操作的顺序安排对最终的视频质量和效率有重要影响。以下是一种推荐的顺序和理由&#xff0c;旨在提高效率和减少错误&#xff1a;…

【深度学习】PyTorch框架(1):PyTorch基础

1.引言 PyTorch专辑的知识源于2023年阿姆斯特丹大学深度学习课程的PyTorch入门教程&#xff0c;旨在为程序员提供PyTorch基础的简洁介绍&#xff0c;并帮助您配置环境&#xff0c;以便编写自己的神经网络。PyTorch是一个开源的机器学习框架&#xff0c;它允许您自定义神经网络…

PostgreSQL 基于时间点恢复

作者&#xff1a;文若 前言 本篇文章介绍 PostgreSQL 基于时间点恢复&#xff08;point-in-time-recover&#xff09;需要的条件及恢复过程&#xff0c;属于操作说明。 1. WAL 日志 WAL&#xff08;Write Ahead Log&#xff09; 日志优先写机制&#xff0c;常用于关系型数据…

关于windows下编译xLua插件的流程记录

1.工程准备 1.xLua工程&#xff1a;GitHub - Tencent/xLua: xLua is a lua programming solution for C# ( Unity, .Net, Mono) , it supports android, ios, windows, linux, osx, etc. 2.build_xlua_with_libs工程&#xff1a;GitHub - chexiongsheng/build_xlua_with_libs…

搭建邮局服务器的配置步骤?如何管理协议?

搭建邮局服务器需要考虑的安全措施&#xff1f;怎么搭建服务器&#xff1f; 在现代互联网环境中&#xff0c;电子邮件是重要的沟通工具。为了保证信息传递的稳定性和安全性&#xff0c;许多企业选择自行搭建邮局服务器。AokSend将详细介绍搭建邮局服务器的配置步骤&#xff0c…