#include<bits/stdc++.h>
using namespace std;
int t = 10;
vector<int> a = {6,4,8,2,3};
bool check(int speed){
double num = 0;
for(int i = 0;i < a.size();i++){
num += ceil(a[i] * 1.0/speed);
}
if(num > t){
return false;
}
else
return true;
}
int main(){
sort(a.begin(),a.end());
int left = 1,right = a[a.size()-1],ans = 0;
while(left <= right){
int mid = left + ((right - left) >> 1);
if(check(mid)){
ans = mid;
right = mid - 1;
}
else{
left = mid + 1;
}
}
cout << ans << endl;
return 0;
}
猴子吃香蕉问题
最新推荐文章于 2025-05-26 11:46:14 发布