样例都过不了,有点问题,求调
查看原帖
样例都过不了,有点问题,求调
776337
sugawara楼主2023/8/3 08:15

个人觉得应该是check函数问题(bool chk),但是一检查好像没啥问题,输出奇怪

#include<iostream>
using namespace std;
int k,l,n,ans;
const int N=1e6+10;
int tree[N]; 
bool chk(int x){
	long long j;
	for(int i=0;i<n;i++){
		j+=tree[i];
	}
	return j/x>=k;
}
int main(){
	scanf("%d%d",&n,&k);
	for(int i=0;i<n;i++){
		scanf("%d",&tree[i]);
	}
	int l=0,r=N;
	while(l<=r){
		int mid=(l+r)/2;
		if(chk(mid)){
			l=mid+1;
			ans=mid;
		}
		else{
			r=mid-1;
		}
	}
	printf("%d",ans);
	return 0;
}

2023/8/3 08:15
加载中...