是洛谷日报吗?
  • 板块P2440 木材加工
  • 楼主Liangjm
  • 当前回复13
  • 已保存回复13
  • 发布时间2021/3/23 18:19
  • 上次更新2023/11/5 01:42:12
查看原帖
是洛谷日报吗?
263846
Liangjm楼主2021/3/23 18:19
#include <bits/stdc++.h>
using namespace std;

#define LL long long
#define rep0(i,n) for(register int i=0;i<n;i++)
#define rep1(i,n) for(register int i=1;i<=n;i++)
#define REP(i,j,n) for(register int i=j;i<n;i++)

const int N=1e5+5;
int a[N],n,k;

//int binary_search(int array[], int n, int value)
//{
//	int left = 0;
//	int right = n - 1;
// 
//	while (left <= right)
//	{
//		int mid = (left + right) >> 1;
// 
//		if (array[mid] < value)
//			left = mid + 1;
//		else if (array[mid] > value)
//			right = mid + 1;
//		else
//			return mid;
//	}
//	return -1;
//}

bool check(int x){
	int sum=0;
	if (x==0)
		return 1;
	rep1(i,n){
		int b=a[i]/x;
		sum+=b;
	}
	if(sum<k)
		return 0;
	return 1;
}

int main()
{
	cin>>n>>k;
	int l=0,r=-1,ans=0;
	rep1(i,n){
		cin>>a[i];
		r=max(r,a[i]);
	}
	while(l<=r){
		int mid=l+r>>1;
		if(check(mid)){
			ans=mid;
			l=mid+1;
		}
		else{
			r=mid-1;
		}
	}
	cout<<ans<<endl;
	
 	return 0;
}

2021/3/23 18:19
加载中...