大连网站建设哪个公司好,手机网站翻译成中文,网页翻译不了中文,河南龙王建设集团网站文章目录1. 题目2. 解题1. 题目
给你一个数组 time #xff0c;其中 time[i] 表示第 i 辆公交车完成 一趟旅途 所需要花费的时间。
每辆公交车可以 连续 完成多趟旅途#xff0c;也就是说#xff0c;一辆公交车当前旅途完成后#xff0c;可以 立马开始 下一趟旅途。 每辆…
文章目录1. 题目2. 解题1. 题目
给你一个数组 time 其中 time[i] 表示第 i 辆公交车完成 一趟旅途 所需要花费的时间。
每辆公交车可以 连续 完成多趟旅途也就是说一辆公交车当前旅途完成后可以 立马开始 下一趟旅途。 每辆公交车 独立 运行也就是说可以同时有多辆公交车在运行且互不影响。
给你一个整数 totalTrips 表示所有公交车 总共 需要完成的旅途数目。请你返回完成 至少 totalTrips 趟旅途需要花费的 最少 时间。
示例 1
输入time [1,2,3], totalTrips 5
输出3
解释
- 时刻 t 1 每辆公交车完成的旅途数分别为 [1,0,0] 。已完成的总旅途数为 1 0 0 1 。
- 时刻 t 2 每辆公交车完成的旅途数分别为 [2,1,0] 。已完成的总旅途数为 2 1 0 3 。
- 时刻 t 3 每辆公交车完成的旅途数分别为 [3,1,1] 。已完成的总旅途数为 3 1 1 5 。
所以总共完成至少 5 趟旅途的最少时间为 3 。示例 2
输入time [2], totalTrips 1
输出2
解释
只有一辆公交车它将在时刻 t 2 完成第一趟旅途。
所以完成 1 趟旅途的最少时间为 2 。提示
1 time.length 10^5
1 time[i], totalTrips 10^7来源力扣LeetCode 链接https://leetcode-cn.com/problems/minimum-time-to-complete-trips 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。 2. 解题
所花费的时间变多能完成的总的 旅程 数量不会减少具有单调性对答案进行二分查找
typedef long long LL;
class Solution {
public:long long minimumTime(vectorint time, int totalTrips) { LL l 1, r 1e15, mid, ans r;while(l r){mid (lr)1;if(canfinish(time, totalTrips, mid)){ans mid;r mid-1;}elsel mid1;}return ans;}bool canfinish(vectorint time, int totalTrips, long long tottime){LL ct 0;for(auto t : time){ct tottime/t;if(ct totalTrips)return true;}return false;}
};148 ms 86.6 MB C 我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号Michael阿明一起加油、一起学习进步