全TLE???
查看原帖
全TLE???
1349478
tangyiqi楼主2024/7/7 15:28

不知为什么,晚辈的代码竟然是TLE,烦请各位大佬指教指教

#include <bits/stdc++.h>
using namespace std;
const int N = 1e5+10;
int n,c,a[N],ans;

bool check(int x) {
	int s = 1,lastbay = 1;
	for(int i = 2;i<=n;i++){
		if(a[i]-a[lastbay]>=x){
			s++;
			lastbay = i;
		}
	}
	return s>=c;
}
int main() {
	scanf("%d%d",&n,&c);
	for(int i = 1; i<=n; i++) {
		scanf("%d",&a[i]);
	}
	sort(a+1,a+n+1);
	int l = 1,r = a[n];
	while(l<=r) {
		int mid = l+(l-r)/2;
		if(check(mid)) {
			ans = mid;
			l = mid+1;
		} else {
			r = mid-1;
		}
	}
	printf("%d",ans);
	return 0;
}

帮我者,必一生平安也

2024/7/7 15:28
加载中...