36分求调
  • 板块P2440 木材加工
  • 楼主wq_pw
  • 当前回复1
  • 已保存回复1
  • 发布时间2023/12/26 22:01
  • 上次更新2023/12/27 14:24:33
查看原帖
36分求调
531085
wq_pw楼主2023/12/26 22:01
/*(^v^)*/
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5;
int n,k,l[N];
int ga(int x)
{
	int res=0;
	for(int i=1;i<=n;i++) res+=l[i]/x;
	return res;
}
signed main()
{
	int maxn=0;
	cin>>n>>k;
	for(int i=1;i<=n;i++)  cin>>l[i],maxn=max(maxn,l[i]);			
	int l=1,r=maxn,mid;
	if(ga(1)<k)
	{
		cout<<"0";
		return 0;
	}
	while(l<=r)
	{
		mid=l+(r-l)/2;
		//printf("l = %d , r = %d , mid = %d\n",l,r,mid);
		int ans=ga(mid);
		if(ans==k)
		{
			cout<<mid;
			return 0;
		}
		else if(ans>k)  l=mid+1;
		else r=mid-1;
	}
	//cout<<r;
	return 0;
}
/*(^v^)*/
2023/12/26 22:01
加载中...