Advertisement
nikunjsoni

1870

May 24th, 2021
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.65 KB | None | 0 0
  1. class Solution {
  2. public:
  3.     int minSpeedOnTime(vector<int>& dist, double hour) {
  4.         int l=1, r=(1e9)+1;
  5.         while(l<r){
  6.             int mid = (l+r)/2;
  7.             if(!check(dist, mid, hour))
  8.                 l = mid+1;
  9.             else
  10.                 r = mid;
  11.         }
  12.         if(l<1 || l>(1e9))
  13.             return -1;
  14.         return l;
  15.     }
  16.    
  17.     bool check(vector<int>& dist, int speed, double hour){
  18.         double time=0.0;
  19.         for(auto d: dist){
  20.             time = ceil(time);
  21.             time += (1.0*d)/double(speed);
  22.         }
  23.         if(time <= hour)
  24.             return true;
  25.         return false;
  26.     }
  27.    
  28. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement