Advertisement
nikunjsoni

875

May 17th, 2021
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.62 KB | None | 0 0
  1. class Solution {
  2. public:
  3.     int minEatingSpeed(vector<int>& piles, int h) {
  4.         int left=1, right=INT_MIN;
  5.         for(auto num: piles)
  6.             right = max(right, num);
  7.        
  8.         right++;
  9.         while(left<right){
  10.             int mid = (left+right)/2;
  11.             if(check(mid, piles) > h)
  12.                 left = mid+1;
  13.             else
  14.                 right = mid;
  15.         }
  16.         return left;
  17.     }
  18.    
  19.     int check(int speed, vector<int>& piles){
  20.         int time = 0;
  21.         for(auto num: piles){
  22.             time += int(ceil(1.0*num/speed));
  23.         }
  24.         return time;
  25.     }
  26.    
  27. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement