Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Solution {
- public:
- int minSpeedOnTime(vector<int>& dist, double hour) {
- int l=1, r=(1e9)+1;
- while(l<r){
- int mid = (l+r)/2;
- if(!check(dist, mid, hour))
- l = mid+1;
- else
- r = mid;
- }
- if(l<1 || l>(1e9))
- return -1;
- return l;
- }
- bool check(vector<int>& dist, int speed, double hour){
- double time=0.0;
- for(auto d: dist){
- time = ceil(time);
- time += (1.0*d)/double(speed);
- }
- if(time <= hour)
- return true;
- return false;
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement