Minimum Time to Complete Trips LeetCode solution in C++
1class Solution {2public:3long long minimumTime(vector<int> &time, int totalTrips) {4long long anstillnow = -1;56long long left = 1, right = 100000000000001; // can also write this as7// 1+1e1489while (left <= right) {10long long mid = left + (right - left) / 2; // find mid point like this to avoid overflow11long long curr_trips = 0;12for (int t : time) {13curr_trips += mid / t;14}1516if (curr_trips >= totalTrips) {17anstillnow = mid;18right = mid - 1;19}2021else {22left = mid + 1;23}24}2526return anstillnow;27}28};