0pts求调,3小时内悬3关
我 测试样例 都 过不去 啊 !!!(QwQ)
我错哪儿了?
代码
#include<bits/stdc++.h>
using namespace std;
#define int long long
int n,k,temp;
double l[1000000];
bool check(int mid){
int total=0;
for(int j=1;j<=n;j++){
total=total+l[j]/mid;
}
return total<=k;
}
signed main(){
cin>>n>>k;
for(int i=1;i<=n;i++){
cin>>l[i];
l[i]=l[i]*100;
}
int left=0,right=10000000;
while(left<=right){
int mid=(right-left)/2+left;
if(mid==0){
cout<<"0.00";
return 0;
}
if(check(mid)){
left=mid+1;
temp=mid;
}else{
right=mid-1;
}
}
cout<<1.0*temp/100;
return 0;
}
前三名回复的dalao必关注,感谢指正