当前位置:网站首页>Leetcode daily question (1870. minimum speed to arrive on time)
Leetcode daily question (1870. minimum speed to arrive on time)
2022-07-06 06:41:00 【wangjun861205】
You are given a floating-point number hour, representing the amount of time you have to reach the office. To commute to the office, you must take n trains in sequential order. You are also given an integer array dist of length n, where dist[i] describes the distance (in kilometers) of the ith train ride.
Each train can only depart at an integer hour, so you may need to wait in between each train ride.
For example, if the 1st train ride takes 1.5 hours, you must wait for an additional 0.5 hours before you can depart on the 2nd train ride at the 2 hour mark.
Return the minimum positive integer speed (in kilometers per hour) that all the trains must travel at for you to reach the office on time, or -1 if it is impossible to be on time.
Tests are generated such that the answer will not exceed 107 and hour will have at most two digits after the decimal point.
Example 1:
Input: dist = [1,3,2], hour = 6
Output: 1
Explanation: At speed 1:
- The first train ride takes 1/1 = 1 hour.
- Since we are already at an integer hour, we depart immediately at the 1 hour mark. The second train takes 3/1 = 3 hours.
- Since we are already at an integer hour, we depart immediately at the 4 hour mark. The third train takes 2/1 = 2 hours.
- You will arrive at exactly the 6 hour mark.
Example 2:
Input: dist = [1,3,2], hour = 2.7
Output: 3
Explanation: At speed 3:
- The first train ride takes 1/3 = 0.33333 hours.
- Since we are not at an integer hour, we wait until the 1 hour mark to depart. The second train ride takes 3/3 = 1 hour.
- Since we are already at an integer hour, we depart immediately at the 2 hour mark. The third train takes 2/3 = 0.66667 hours.
- You will arrive at the 2.66667 hour mark.
Example 3:
Input: dist = [1,3,2], hour = 1.9
Output: -1
Explanation: It is impossible because the earliest the third train can depart is at the 2 hour mark.
Constraints:
- n == dist.length
- 1 <= n <= 105
- 1 <= dist[i] <= 105
- 1 <= hour <= 109
- There will be at most two digits after the decimal point in hour.
Two points search , Don't say anything superfluous , The minimum value must be 1, The maximum value given in the title is 10 The seventh power of
impl Solution {
pub fn min_speed_on_time(dist: Vec<i32>, hour: f64) -> i32 {
let mut min = 1;
let mut max = 10i32.pow(7) + 1;
let mut ans = -1;
while min < max {
let mid = (min + max) / 2;
let mut total = 0.0;
for i in 0..dist.len() - 1 {
total += (dist[i] as f64 / mid as f64).ceil() as f64;
}
total += *dist.last().unwrap() as f64 / mid as f64;
if total > hour {
min = mid + 1;
continue;
}
max = mid;
ans = mid;
}
ans
}
}
边栏推荐
- Successfully solved typeerror: data type 'category' not understood
- Today's summer solstice
- SQL Server manager studio(SSMS)安装教程
- My creation anniversary
- Address bar parameter transmission of list page based on jeecg-boot
- Introduction and underlying analysis of regular expressions
- (practice C language every day) reverse linked list II
- [Yu Yue education] Dunhuang Literature and art reference materials of Zhejiang Normal University
- 钓鱼&文件名反转&office远程模板
- Apache DolphinScheduler源码分析(超详细)
猜你喜欢

电子书-CHM-上线CS

云服务器 AccessKey 密钥泄露利用

Today's summer solstice

论文翻译英译中,怎样做翻译效果好?

The whole process realizes the single sign on function and the solution of "canceltoken" of undefined when the request is canceled

国产游戏国际化离不开专业的翻译公司

How to translate biomedical instructions in English

Office doc add in - Online CS
![[ 英语 ] 语法重塑 之 动词分类 —— 英语兔学习笔记(2)](/img/3c/c25e7cbef9be1860842e8981f72352.png)
[ 英语 ] 语法重塑 之 动词分类 —— 英语兔学习笔记(2)

How to convert flv file to MP4 file? A simple solution
随机推荐
字幕翻译中翻英一分钟多少钱?
Monotonic stack
MySQL5.72.msi安装失败
Cannot create poolableconnectionfactory (could not create connection to database server. error
How to do a good job in financial literature translation?
专业论文翻译,英文摘要如何写比较好
Difference between backtracking and recursion
org. activiti. bpmn. exceptions. XMLException: cvc-complex-type. 2.4. a: Invalid content beginning with element 'outgoing' was found
Wish Dragon Boat Festival is happy
[ 英语 ] 语法重塑 之 动词分类 —— 英语兔学习笔记(2)
Convert the array selected by El tree into an array object
P5706 [deep foundation 2. Example 8] redistributing fat house water -- February 13, 2022
Day 239/300 注册密码长度为8~14个字母数字以及标点符号至少包含2种校验
基于购买行为数据对超市顾客进行市场细分(RFM模型)
Py06 dictionary mapping dictionary nested key does not exist test key sorting
Today's summer solstice
Drug disease association prediction based on multi-scale heterogeneous network topology information and multiple attributes
电子书-CHM-上线CS
Black cat takes you to learn EMMC Protocol Part 10: EMMC read and write operation details (read & write)
Day 245/300 JS forEach 多层嵌套后数据无法更新到对象中