最后一个点wa(100000 100000000 木材都是4000)求助
查看原帖
最后一个点wa(100000 100000000 木材都是4000)求助
486510
曾经的路楼主2021/3/13 16:30
#include<bits/stdc++.h>
using namespace std;
const int N = 1e5+10;
int n,m,a[N];
int isMatch(int len){
	int cnt=0;
	for(int i=0;i<n;i++){
		cnt+=(a[i]/len);
	}
	if(cnt>=m){
		return true;
	}
	return false;
} 
int main(){
	cin>>n>>m;
	long long sum=0;
	for(int i=0;i<n;i++){
		cin>>a[i];
		sum+=a[i];
		getchar();
	}
	int len=sum/m;
	if(len<1){
		cout<<0;
		return 0;
	}else if(len==1){
		 cout<<1;
		 return 0;
	}
	int left=1,right=len;
	while(left+1<right){
		int mid=(left+right)/2;
		if(isMatch(mid)){
			left=mid;
		}else{
			right= mid;
		}
	}
	cout<<left;
	return 0;
}
2021/3/13 16:30
加载中...